IronPDF 방법 PDF 생성 Azure 지원 Azure Function에서 IronPDF를 사용하여 C#으로 HTML을 PDF로 변환하는 방법 커티스 차우 업데이트됨:1월 10, 2026 다운로드 IronPDF NuGet 다운로드 DLL 다운로드 윈도우 설치 프로그램 무료 체험 시작하기 LLM용 사본 LLM용 사본 LLM용 마크다운 형식으로 페이지를 복사하세요 ChatGPT에서 열기 ChatGPT에 이 페이지에 대해 문의하세요 제미니에서 열기 제미니에게 이 페이지에 대해 문의하세요 Grok에서 열기 Grok에게 이 페이지에 대해 문의하세요 혼란 속에서 열기 Perplexity에게 이 페이지에 대해 문의하세요 공유하다 페이스북에 공유하기 트위터에 공유하기 LinkedIn에 공유하기 URL 복사 이메일로 기사 보내기 This article was translated from English: Does it need improvement? Translated View the article in English IronPDF는 MVC 웹사이트 및 Azure Functions를 포함한 Azure 플랫폼에서 PDF 문서를 생성, 조작 및 읽습니다. 이 가이드에서는 프로덕션 환경에 맞게 적절히 구성하고 최적화하여 Azure Functions에서 HTML을 PDF로 변환하는 방법을 보여줍니다. Docker 컨테이너 내에서 Azure Functions를 실행하는 경우 이 Azure Docker Linux 튜토리얼을 참조하십시오. 빠른 시작: Azure에서 IronPDF를 사용한 HTML을 PDF로 변환 IronPDF를 사용하여 Azure 애플리케이션에서 HTML을 PDF로 변환해 보세요. 이 간편 가이드는 IronPDF API 메서드를 사용하여 URL을 PDF 문서로 렌더링하는 방법을 보여줍니다. 이 예시는 IronPDF를 사용하여 Azure 솔루션에 PDF 기능을 통합하는 간단한 방법을 보여줍니다. 이 예제를 따라 서식을 유지한 채 PDF를 생성하고 Azure 프로젝트를 빠르게 실행해 보세요. 지금 바로 NuGet을 사용하여 PDF 만들기를 시작하세요. NuGet 패키지 관리자를 사용하여 IronPDF를 설치하세요. PM > Install-Package IronPdf 다음 코드 조각을 복사하여 실행하세요. var pdf = new IronPdf.ChromePdfRenderer() .RenderHtmlAsPdf("<h1>Hello Azure!</h1>") .SaveAs("output-azure.pdf"); 실제 운영 환경에서 테스트할 수 있도록 배포하세요. 지금 바로 무료 체험판을 통해 프로젝트에서 IronPDF를 사용해 보세요. 30일 무료 체험 ### 최소 워크플로우(5단계) Azure에서 PDF를 생성하는 C# 라이브러리를 설치하세요. Azure Basic B1 호스팅 계층 이상을 선택하세요. 게시할 때 `Run from package file` 옵션의 체크를 해제하세요. 권장 구성 지침을 따르십시오. Azure를 사용하여 PDF 생성기를 만들려면 코드 예제를 참조하세요. 튜토리얼 사용법 프로젝트는 어떻게 설정하나요? 어떤 IronPDF 패키지를 설치해야 할까요? 첫 번째 단계는 NuGet을 사용하여 IronPDF를 설치하는 것입니다. Windows 기반 Azure Functions에서는 IronPdf 패키지( Windows용 NuGet IronPdf 패키지) 를 사용하세요. Linux 기반 Azure Functions에서는 IronPdf.Linux 패키지( Linux용 NuGet IronPdf 패키지) 를 사용하세요. Install-Package IronPdf 또는 Azure용 IronPDF 직접 다운로드 패키지 링크를 사용하여 .dll 파일을 수동으로 설치할 수도 있습니다. 보다 고급 설치 옵션에 대해서는 종합적인 NuGet 패키지 가이드를 참조하세요. 어떤 Azure 옵션을 구성해야 하나요? 어떤 Azure 호스팅 등급을 선택해야 할까요? Azure Basic B1 은 렌더링 요구 사항을 충족하는 데 필요한 최소 호스팅 수준입니다. 높은 처리량을 가진 시스템을 구축하는 경우, 이를 업그레이드해야 할 수도 있습니다. B1 등급은 IronPDF의 HTML-to-PDF 변환 기능을 구동하는 Chrome PDF 렌더링 엔진 에 충분한 리소스를 제공합니다. 경고 앱 서비스 플랜 유형을 선택하지 않으면 IronPdf에서 PDF 문서를 렌더링하지 못할 수 있습니다. "패키지 파일에서 실행" 옵션을 해제해야 하는 이유는 무엇입니까? Azure Functions 애플리케이션을 게시할 때 Run from package file가 선택되어 있지 않은지 확인하십시오. 이 옵션을 선택하면 IronPDF가 실행 중에 필요한 런타임 종속성을 추출하지 못하도록 하는 읽기 전용 배포가 생성됩니다. .NET 6용 설정 방법은 무엇인가요? 최근 마이크로소프트는 .NET 6 이상 버전에서 이미지 처리 라이브러리를 제거하여 많은 기존 API가 더 이상 작동하지 않게 되었습니다. 따라서 이러한 기존 API 호출을 계속 사용할 수 있도록 프로젝트를 구성해야 합니다. Linux 시스템에서 Installation.LinuxAndDockerDependenciesAutoConfig=true;를 설정하여 libgdiplus가 시스템에 설치되도록 하십시오. .NET 6 프로젝트의 .csproj 파일에 다음 내용을 추가하세요. <GenerateRuntimeConfigurationFiles>true</GenerateRuntimeConfigurationFiles> <GenerateRuntimeConfigurationFiles>true</GenerateRuntimeConfigurationFiles> XML 프로젝트에 runtimeconfig.template.json라는 파일을 생성하고 다음 내용을 입력하세요. { "configProperties": { "System.Drawing.EnableUnixSupport": true } } 마지막으로, System.Drawing에 대한 Unix 지원을 활성화하려면 프로그램 시작 부분에 다음 줄을 추가하십시오. System.AppContext.SetSwitch("System.Drawing.EnableUnixSupport", true); System.AppContext.SetSwitch("System.Drawing.EnableUnixSupport", true); $vbLabelText $csharpLabel Azure에서 Docker를 언제 사용해야 할까요? Azure에서 SVG 글꼴에 대한 제어 권한과 성능 제어 기능을 확보하는 한 가지 방법은 Docker 컨테이너 내에서 IronPDF 애플리케이션과 함수를 사용하는 것입니다. 이러한 접근 방식은 런타임 환경에 대한 더 나은 제어 기능을 제공하고 플랫폼별 제약 사항을 상당 부분 제거합니다. 저희는 Linux 및 Windows 인스턴스용 IronPDF Azure Docker 튜토리얼을 종합적으로 제공하고 있으며, 이를 읽어보시기를 권장합니다. Azure Functions 코드는 어떤 모습일까요? 이 예제는 내장된 Azure 로거에 로그 항목을 자동으로 출력합니다(ILogger log 참조). 자세한 로깅 구성은 사용자 지정 로깅 가이드를 참조하십시오. [FunctionName("PrintPdf")] public static async Task<IActionResult> Run( [HttpTrigger(AuthorizationLevel.Anonymous, "get", "post", Route = null)] HttpRequest req, ILogger log, ExecutionContext context) { log.LogInformation("Entered PrintPdf API function..."); // Apply license key IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"; // Configure logging IronPdf.Logging.Logger.LoggingMode = IronPdf.Logging.Logger.LoggingModes.Custom; IronPdf.Logging.Logger.CustomLogger = log; IronPdf.Logging.Logger.EnableDebugging = false; // Configure IronPdf settings Installation.LinuxAndDockerDependenciesAutoConfig = false; Installation.ChromeGpuMode = IronPdf.Engines.Chrome.ChromeGpuModes.Disabled; try { log.LogInformation("About to render pdf..."); // Create a renderer and render the URL as PDF ChromePdfRenderer renderer = new ChromePdfRenderer(); var pdf = renderer.RenderUrlAsPdf("https://www.google.com/"); log.LogInformation("Finished rendering pdf..."); // Return the rendered PDF as a file download return new FileContentResult(pdf.BinaryData, "application/pdf") { FileDownloadName = "google.pdf" }; } catch (Exception e) { log.LogError(e, "Error while rendering pdf"); } return new OkObjectResult("OK"); } [FunctionName("PrintPdf")] public static async Task<IActionResult> Run( [HttpTrigger(AuthorizationLevel.Anonymous, "get", "post", Route = null)] HttpRequest req, ILogger log, ExecutionContext context) { log.LogInformation("Entered PrintPdf API function..."); // Apply license key IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"; // Configure logging IronPdf.Logging.Logger.LoggingMode = IronPdf.Logging.Logger.LoggingModes.Custom; IronPdf.Logging.Logger.CustomLogger = log; IronPdf.Logging.Logger.EnableDebugging = false; // Configure IronPdf settings Installation.LinuxAndDockerDependenciesAutoConfig = false; Installation.ChromeGpuMode = IronPdf.Engines.Chrome.ChromeGpuModes.Disabled; try { log.LogInformation("About to render pdf..."); // Create a renderer and render the URL as PDF ChromePdfRenderer renderer = new ChromePdfRenderer(); var pdf = renderer.RenderUrlAsPdf("https://www.google.com/"); log.LogInformation("Finished rendering pdf..."); // Return the rendered PDF as a file download return new FileContentResult(pdf.BinaryData, "application/pdf") { FileDownloadName = "google.pdf" }; } catch (Exception e) { log.LogError(e, "Error while rendering pdf"); } return new OkObjectResult("OK"); } $vbLabelText $csharpLabel 고급 HTML 문자열 렌더링 예제 CSS 스타일링이 적용된 사용자 지정 HTML과 같은 더 복잡한 시나리오의 경우 HTML 문자열을 PDF로 변환하는 기능을 사용할 수 있습니다. [FunctionName("RenderHtmlWithCss")] public static async Task<IActionResult> RenderHtmlWithCss( [HttpTrigger(AuthorizationLevel.Function, "post", Route = null)] HttpRequest req, ILogger log) { log.LogInformation("Processing HTML to PDF request"); // Read HTML content from request body string htmlContent = await new StreamReader(req.Body).ReadToEndAsync(); // Configure renderer with custom options var renderer = new ChromePdfRenderer() { RenderingOptions = new ChromePdfRenderOptions() { MarginTop = 20, MarginBottom = 20, MarginLeft = 10, MarginRight = 10, CssMediaType = IronPdf.Rendering.PdfCssMediaType.Print, PrintHtmlBackgrounds = true, CreatePdfFormsFromHtml = true } }; try { // Add custom CSS string styledHtml = $@" <html> <head> <style> body {{ font-family: Arial, sans-serif; padding: 20px; }} h1 {{ color: #2c3e50; }} .highlight {{ background-color: #f1c40f; padding: 5px; }} </style> </head> <body> {htmlContent} </body> </html>"; var pdf = renderer.RenderHtmlAsPdf(styledHtml); return new FileContentResult(pdf.BinaryData, "application/pdf") { FileDownloadName = "styled-document.pdf" }; } catch (Exception ex) { log.LogError(ex, "Failed to render HTML to PDF"); return new BadRequestObjectResult("Error processing HTML content"); } } [FunctionName("RenderHtmlWithCss")] public static async Task<IActionResult> RenderHtmlWithCss( [HttpTrigger(AuthorizationLevel.Function, "post", Route = null)] HttpRequest req, ILogger log) { log.LogInformation("Processing HTML to PDF request"); // Read HTML content from request body string htmlContent = await new StreamReader(req.Body).ReadToEndAsync(); // Configure renderer with custom options var renderer = new ChromePdfRenderer() { RenderingOptions = new ChromePdfRenderOptions() { MarginTop = 20, MarginBottom = 20, MarginLeft = 10, MarginRight = 10, CssMediaType = IronPdf.Rendering.PdfCssMediaType.Print, PrintHtmlBackgrounds = true, CreatePdfFormsFromHtml = true } }; try { // Add custom CSS string styledHtml = $@" <html> <head> <style> body {{ font-family: Arial, sans-serif; padding: 20px; }} h1 {{ color: #2c3e50; }} .highlight {{ background-color: #f1c40f; padding: 5px; }} </style> </head> <body> {htmlContent} </body> </html>"; var pdf = renderer.RenderHtmlAsPdf(styledHtml); return new FileContentResult(pdf.BinaryData, "application/pdf") { FileDownloadName = "styled-document.pdf" }; } catch (Exception ex) { log.LogError(ex, "Failed to render HTML to PDF"); return new BadRequestObjectResult("Error processing HTML content"); } } $vbLabelText $csharpLabel Azure Functions에서 라이선스를 관리하는 방법에 대한 자세한 내용은 라이선스 키 사용 설명서를 참조하세요. 알려진 문제점은 무엇인가요? 공유 호스팅 환경에서 SVG 글꼴이 표시되지 않는 이유는 무엇인가요? 한 가지 제한 사항은 Azure 호스팅 플랫폼 개요에서 저렴한 공유 웹 앱 계층에서는 Google Fonts와 같은 SVG 글꼴을 로드하는 서버를 지원하지 않는다는 것입니다. 이는 Windows GDI+ 그래픽 개체에 대한 접근을 차단하는 보안 제한 때문입니다. 최상의 글꼴 렌더링이 필요한 경우 , IronPDF용 Windows 또는 Linux Docker 컨테이너 가이드를 참조하거나 Azure VPS를 사용하는 것을 권장합니다. Azure 무료 티어 호스팅이 느린 이유는 무엇인가요? Azure의 무료 및 공유 계층과 사용량 기반 요금제는 PDF 렌더링에 적합하지 않습니다. 저희가 직접 사용하고 있는 Azure B1 호스팅/프리미엄 플랜을 추천합니다. HTML to PDF 처리 과정은 모든 컴퓨터에 상당한 부담을 줍니다. 이는 사용자의 컴퓨터에서 웹 페이지를 열고 렌더링하는 것과 유사합니다. 실제 브라우저 엔진이 사용되므로 그에 맞춰 시스템을 최적화해야 하며, 비슷한 성능의 데스크톱 컴퓨터에서와 유사한 렌더링 시간을 예상해야 합니다. Azure Functions를 로컬 환경에서 디버깅하려면 어떻게 해야 하나요? 로컬 개발 및 테스트에 대해서는 로컬 컴퓨터에서 Azure Functions 프로젝트 디버깅 가이드를 참조하세요. 이를 통해 Azure에 배포하기 전에 문제를 식별하고 해결할 수 있습니다. Azure 로그는 어디에서 찾을 수 있나요? PDF 생성 문제를 해결할 때 Azure 로그는 매우 유용합니다. IronPDF 작업과 관련된 로그에 액세스하고 해석하는 방법에 대한 자세한 내용은 Azure 로그 파일 가이드를 참조하세요. 엔지니어링 지원 요청은 어떻게 생성하나요? 지원 요청 티켓을 생성하려면 IronPDF 엔지니어링 지원 요청 방법 가이드를 참조하십시오. 생산을 위한 모범 사례 안정적인 성능을 위해 항상 적절한 호스팅 등급(B1) 이상을 사용하십시오 . 로깅을 올바르게 구성하십시오 - 프로덕션 모니터링을 위해 Azure Application Insights를 사용하십시오. 예외를 적절하게 처리하십시오 - 일시적인 오류에 대한 재시도 로직을 구현하십시오 HTML 콘텐츠 최적화 - 외부 리소스 사용을 최소화하고 가능한 경우 base64로 인코딩된 이미지를 사용하십시오. 철저한 테스트 - Azure 배포 전에 로컬 환경에서 PDF 생성 유효성을 검사하십시오. 리소스 사용량 모니터링 - 메모리 및 CPU 사용량을 추적하여 적절하게 확장합니다. 자주 묻는 질문 PDF 생성을 위해 필요한 최소 Azure 호스팅 티어는 무엇입니까? IronPDF는 PDF 렌더링을 위해 최소 Azure Basic B1 티어의 호스팅이 필요합니다. B1 티어는 IronPDF의 HTML-PDF 변환 기능을 지원하는 Chrome PDF 렌더링 엔진에 충분한 리소스를 제공합니다. Windows 기반 Azure Functions를 사용하려면 어떤 패키지를 설치해야 하나요? Windows 기반 Azure Functions의 경우 NuGet에서 IronPdf 패키지를 설치하세요. 이 패키지는 Windows 환경에 최적화되어 있으며 Chrome 렌더링 엔진을 사용하여 완벽한 PDF 생성 기능을 제공합니다. Azure Functions에서 HTML을 PDF로 변환하는 방법은 무엇인가요? IronPDF의 ChromePdfRenderer를 사용하면 단 한 줄의 코드로 HTML을 PDF로 변환할 수 있습니다. 새 인스턴스를 생성하고 HTML 콘텐츠를 RenderHtmlAsPdf() 함수에 전달한 다음, 생성된 PDF 파일을 저장하면 됩니다. 앱 서비스 플랜을 잘못 선택하면 어떻게 되나요? 앱 서비스 플랜 유형을 선택하지 않으면 IronPDF에서 PDF 문서를 렌더링하지 못할 수 있습니다. PDF 렌더링 엔진이 올바르게 작동하려면 Azure 호스팅 환경을 적절히 구성해야 합니다. 게시할 때 '패키지 파일에서 실행' 옵션을 선택 해제해야 하는 이유는 무엇입니까? Azure Functions 애플리케이션을 게시할 때 IronPDF가 Azure 환경 내의 렌더링 구성 요소 및 종속성에 제대로 액세스하고 활용할 수 있도록 '패키지 파일에서 실행' 옵션을 선택 해제해야 합니다. Linux 기반 Azure Functions를 사용하여 PDF를 생성할 수 있습니까? 네, Linux 기반 Azure Functions의 경우 NuGet에서 IronPdf.Linux 패키지를 사용하세요. 이 패키지는 Linux 환경에 최적화되어 있으며 동일한 PDF 생성 기능을 제공합니다. PDF 생성 처리량을 높여야 한다면 어떻게 해야 할까요? 처리량이 높은 시스템의 경우 B1 등급 이상으로 업그레이드해야 할 수 있습니다. IronPDF는 Azure 리소스에 따라 확장되므로 더 높은 성능 등급을 선택하여 PDF 생성 요구 사항 증가에 대응할 수 있습니다. 커티스 차우 지금 바로 엔지니어링 팀과 채팅하세요 기술 문서 작성자 커티스 차우는 칼턴 대학교에서 컴퓨터 과학 학사 학위를 취득했으며, Node.js, TypeScript, JavaScript, React를 전문으로 하는 프론트엔드 개발자입니다. 직관적이고 미적으로 뛰어난 사용자 인터페이스를 만드는 데 열정을 가진 그는 최신 프레임워크를 활용하고, 잘 구성되고 시각적으로 매력적인 매뉴얼을 제작하는 것을 즐깁니다. 커티스는 개발 분야 외에도 사물 인터넷(IoT)에 깊은 관심을 가지고 있으며, 하드웨어와 소프트웨어를 통합하는 혁신적인 방법을 연구합니다. 여가 시간에는 게임을 즐기거나 디스코드 봇을 만들면서 기술에 대한 애정과 창의성을 결합합니다. 시작할 준비 되셨나요? Nuget 다운로드 17,527,568 | 버전: 2026.2 방금 출시되었습니다 NuGet 무료 다운로드 총 다운로드 수: 17,527,568 라이선스 보기