Jak osadzać znaki UTF-8 w plikach PDF przy użyciu języka C#

Tworzenie plików PDF w formacie UTF-8 / Unicode z językami międzynarodowymi przy użyciu języka C

This article was translated from English: Does it need improvement?
Translated
View the article in English

IronPDF w pelni wspiera kodowanie UTF-8 i znaki Unicode w PDF-ach, co pozwala programistom na renderowanie jezykow miedzynarodowych, takich jak chinski, japonski, arabski i tajski, poprzez ustawienie InputEncoding na UTF8 oraz zapewnienie prawidlowej deklaracji zestawu znakow w meta tagach HTML.

IronPDF obsługuje kodowanie UTF-8 w plikach PDF, ponieważ jest zgodny ze standardem Chrome. IronPDF obsługuje wszystkie znaki, które mogą być poprawnie wyświetlane w przeglądarce Chrome. Możesz mieć pewność, że znaki w językach obcych będą wyświetlane poprawnie. W tym poradniku omówimy krok po kroku, jak renderować UTF-8 w pliku PDF.

Silnik renderujący IronPDF dla przeglądarki Chrome zapewnia pełną obsługę znaków Unicode, umożliwiając tworzenie dokumentów wielojęzycznych. Niezależnie od tego, czy tworzysz aplikacje na rynki międzynarodowe, czy obsługujesz wiele zestawów znaków w jednym dokumencie, IronPDF zapewnia spójne i dokładne renderowanie na wszystkich platformach. Ta funkcja obejmuje złożone skrypty, języki pisane od prawej do lewej oraz symbole specjalne.

Szybki start: Generowanie plików PDF zakodowanych w formacie UTF-8 za pomocą IronPDF

Ten przykład pokazuje, jak wygenerować plik PDF z kodowaniem UTF-8 przy użyciu IronPDF. Ustawiajac InputEncoding na UTF-8 i uzywajac metody RenderHtmlAsPdf, programisci moga zapewnic, ze znaki miedzynarodowe sa wyswietlane poprawnie. Proces ten wymaga zaledwie kilku linii kodu.

  1. Install IronPDF with NuGet Package Manager

    PM > Install-Package IronPdf
  2. Skopiuj i uruchom ten fragment kodu.

    // Initialize the Chrome PDF renderer
    var renderer = new IronPdf.ChromePdfRenderer();
    
    // Set the input encoding to UTF-8 to support international characters
    renderer.RenderingOptions.InputEncoding = System.Text.Encoding.UTF8;
    
    // Render HTML containing Japanese text to PDF
    // Note: Always include meta charset='utf-8' in your HTML
    var pdf = renderer.RenderHtmlAsPdf("<html><head><meta charset='utf-8'></head><body>こんにちは世界</body></html>");
    
    // Save the PDF with UTF-8 content
    pdf.SaveAs("utf8-example.pdf");
  3. Wdrożenie do testowania w środowisku produkcyjnym

    Rozpocznij używanie IronPDF w swoim projekcie już dziś z darmową wersją próbną

    arrow pointer

Jak stworzyć prosty przykład pliku PDF w formacie UTF-8?

Podczas pracy z IronPDF czesto uzywamy rozszerzonych zestawow znakow, takich jak UTF-8 Encoding. Ma to kluczowe znaczenie przy tworzeniu plików PDF zawierających tekst w wielu językach lub symbole specjalne. Kodowanie UTF-8 zapewnia, ze wszystkie znaki sa poprawnie reprezentowane i wyswietlane w dokumentach PDF, niezaleznie od uzywanego jezyka lub pisma.

Dla programistow pracujacych z aplikacjami miedzynarodowymi, zrozumienie, jak prawidlowo zastosowac UTF-8 kodowanie, jest kluczowe. IronPDF upraszcza ten proces, dostarczajac proste metody obslugi znakow Unicode. Mozesz dowiedziec sie wiecej o pracy z jezykami miedzynarodowymi i CMJK w naszym przewodniku rozwiazywania problemow.

Tutaj mamy przyklad ciagu przekazywanego do metody RenderHtmlAsPdf, ktora oczekuje wkladu w postaci ciagu HTML:

// Example HTML content containing text in multiple languages
// Japanese, Arabic, and Thai text samples for demonstration
string htmlContent = @"
    <p>周態告応立待太記行神正用真最。音日独素円政進任見引際初携食。更火識将回興継時億断保媛全職。
    文造画念響竹都務済約記求生街東。天体無適立年保輪動元念足総地作靖権瀬内。
    失文意芸野画美暮実刊切心。感変動技実視高療試意写表重車棟性作家薄井。
    陸瓶右覧撃稿法真勤振局夘決。任堀記文市物第前兜純響限。囲石整成先尾未展退幹販山令手北結。</p>

    <p>أم يذكر النفط قبضتهم على, الصين وفنلندا ما حدى. تم لكل أملا المنتصر,
    ٣٠ حدى مارد القوى. شرسة للسيطرة قامفي. حتى أم يطول المحيط,
    زهاء وحلفاؤها من فعل. لم قامت الجو الساحلية وتم, ويعزى واقتصار قبل كل.</p>

    <p>ภคนทลาพาธสตารเซฟต แชมป มารเกตตงลมเหลวโยเกรต แลนดบาบนอมครม รสโซ แบรนดไคลแมกซ พซซาโมเดลเสอโครง มอบโซนรายชอ
    แอดมชชน ดอกเตอร พะเรอ มารคเจไดโมจราสเบอรร เอนทรานซออดชนศลปวฒนธรรมเปราะบาง โมจซเรยสวอลนตทรปลเมอร ทป วาไรตบกเมเปล</p>
";
// Example HTML content containing text in multiple languages
// Japanese, Arabic, and Thai text samples for demonstration
string htmlContent = @"
    <p>周態告応立待太記行神正用真最。音日独素円政進任見引際初携食。更火識将回興継時億断保媛全職。
    文造画念響竹都務済約記求生街東。天体無適立年保輪動元念足総地作靖権瀬内。
    失文意芸野画美暮実刊切心。感変動技実視高療試意写表重車棟性作家薄井。
    陸瓶右覧撃稿法真勤振局夘決。任堀記文市物第前兜純響限。囲石整成先尾未展退幹販山令手北結。</p>

    <p>أم يذكر النفط قبضتهم على, الصين وفنلندا ما حدى. تم لكل أملا المنتصر,
    ٣٠ حدى مارد القوى. شرسة للسيطرة قامفي. حتى أم يطول المحيط,
    زهاء وحلفاؤها من فعل. لم قامت الجو الساحلية وتم, ويعزى واقتصار قبل كل.</p>

    <p>ภคนทลาพาธสตารเซฟต แชมป มารเกตตงลมเหลวโยเกรต แลนดบาบนอมครม รสโซ แบรนดไคลแมกซ พซซาโมเดลเสอโครง มอบโซนรายชอ
    แอดมชชน ดอกเตอร พะเรอ มารคเจไดโมจราสเบอรร เอนทรานซออดชนศลปวฒนธรรมเปราะบาง โมจซเรยสวอลนตทรปลเมอร ทป วาไรตบกเมเปล</p>
";
$vbLabelText   $csharpLabel

Powyzej umieszczony tekst jest opakowany w tagi <p>, poniewaz mamy do czynienia z ciagiem HTML. Mozesz przekazac ten ciag HTML do Renderera PDF Chrome IronPDF za pomoca takich metod jak RenderHtmlAsPdf. Dla bardziej zlozonych dokumentow HTML, mozesz chciec zapoznac sie z naszym przewodnikiem konwersji HTML do PDF.

:path=/static-assets/pdf/content-code-examples/how-to/utf-8.cs
using IronPdf;

const string html_with_utf_8 =
    @"<p>周態告応立待太記行神正用真最。音日独素円政進任見引際初携食。更火識将回興継時億断保媛全職。
    文造画念響竹都務済約記求生街東。天体無適立年保輪動元念足総地作靖権瀬内。
    失文意芸野画美暮実刊切心。感変動技実視高療試意写表重車棟性作家薄井。
    陸瓶右覧撃稿法真勤振局夘決。任堀記文市物第前兜純響限。囲石整成先尾未展退幹販山令手北結。</p>
    <p>
    أم يذكر النفط قبضتهم على, الصين وفنلندا ما حدى. تم لكل أملاً المنتصر,
    ٣٠ حدى مارد القوى. شرسة للسيطرة قامفي. حتى أم يطول المحيط,
    زهاء وحلفاؤها من فعل. لم قامت الجو الساحلية وتم, ويعزى واقتصار قبل كل.
    </p>
    <p>
    ภคันทลาพาธสตาร์เซฟตี้ แชมป์ มาร์เก็ตติ้งล้มเหลวโยเกิร์ต แลนด์บาบูนอึมครึม รุสโซ แบรนด์ไคลแม็กซ์ พิซซ่าโมเดลเสือโคร่ง ม็อบโซนรายชื่อ
    แอดมิชชั่น ด็อกเตอร์ พะเรอ มาร์คเจไดโมจิราสเบอร์รี เอนทรานซ์ออดิชั่นศิลปวัฒนธรรมเปราะบาง โมจิซีเรียสวอลนัตทริปลีเมอร์ ทิป วาไรตี้บิ๊กเมเปิล
    </p>";

var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.InputEncoding = System.Text.Encoding.UTF8;

var pdf = renderer.RenderHtmlAsPdf(html_with_utf_8);
pdf.SaveAs("Unicode.pdf");
Imports IronPdf

Private Const html_with_utf_8 As String = "<p>周態告応立待太記行神正用真最。音日独素円政進任見引際初携食。更火識将回興継時億断保媛全職。
    文造画念響竹都務済約記求生街東。天体無適立年保輪動元念足総地作靖権瀬内。
    失文意芸野画美暮実刊切心。感変動技実視高療試意写表重車棟性作家薄井。
    陸瓶右覧撃稿法真勤振局夘決。任堀記文市物第前兜純響限。囲石整成先尾未展退幹販山令手北結。</p>
    <p>
    أم يذكر النفط قبضتهم على, الصين وفنلندا ما حدى. تم لكل أملاً المنتصر,
    ٣٠ حدى مارد القوى. شرسة للسيطرة قامفي. حتى أم يطول المحيط,
    زهاء وحلفاؤها من فعل. لم قامت الجو الساحلية وتم, ويعزى واقتصار قبل كل.
    </p>
    <p>
    ภคันทลาพาธสตาร์เซฟตี้ แชมป์ มาร์เก็ตติ้งล้มเหลวโยเกิร์ต แลนด์บาบูนอึมครึม รุสโซ แบรนด์ไคลแม็กซ์ พิซซ่าโมเดลเสือโคร่ง ม็อบโซนรายชื่อ
    แอดมิชชั่น ด็อกเตอร์ พะเรอ มาร์คเจไดโมจิราสเบอร์รี เอนทรานซ์ออดิชั่นศิลปวัฒนธรรมเปราะบาง โมจิซีเรียสวอลนัตทริปลีเมอร์ ทิป วาไรตี้บิ๊กเมเปิล
    </p>"

Private renderer = New ChromePdfRenderer()
renderer.RenderingOptions.InputEncoding = System.Text.Encoding.UTF8

Dim pdf = renderer.RenderHtmlAsPdf(html_with_utf_8)
pdf.SaveAs("Unicode.pdf")
$vbLabelText   $csharpLabel

Podczas pracy z zawartoscia UTF-8, wazne jest, aby zrozumiec, jak IronPDF obsluguje rozne typy tresci. Mozesz rowniez konwertowac pliki HTML, ktore zawieraja znaki UTF-8, uzywajac podobnych metod. Dodatkowo, jesli pracujesz z fontami webowymi, aby zapewnic poprawne wyswietlanie znakow, zapoznaj sie z naszym przewodnikiem na temat uzywania fontow webowych i ikon.

To jest plik wygenerowany przez kod:

Aby zapewnic idealne kodowanie HTML jako PDF, okresl wybrany przez siebie zestaw znakow w dwojaki sposob. To dwojakie podejscie zapewnia, ze zarowno silnik renderujacy, jak i dokument HTML sa odpowiednio skonfigurowane do zawartosci UTF-8:

  • W ChromePdfRenderer.RenderingOptions uzywajac System.Text.Encoding.UTF8
  • W naglowku HTML:
<html>
    <head>

        <meta charset='utf-8'>
    </head>
    <body>
        こんにちは世界
    </body>
</html>
<html>
    <head>

        <meta charset='utf-8'>
    </head>
    <body>
        こんにちは世界
    </body>
</html>
HTML

Co powinienem wiedziec o wsparciu dla jezykow miedzynarodowych?

IronPDF wspiera konwersje HTML-do-PDF w jezykach o nielatynskich pismach, w tym chinskim, japonskim, arabskim, hebrajskim, rosyjskim, tajskim, oraz wszystkie jezyki miedzynarodowe wspierane przez Unicode, w tym dokumenty z mieszanymi jezykami. To kompleksowe wsparcie jezykowe sprawia, ze IronPDF jest odpowiedni dla globalnych aplikacji, ktore musza generowac PDF-y w wielu jezykach jednoczesnie.

Podczas tworzenia aplikacji dla miedzynarodowych odbiorcow, wlasciwe wsparcie jezykowe jest kluczowe. Wsparcie Unicode przez IronPDF zapewnia, ze twoje PDF-y beda wyswietlane poprawnie niezaleznie od docelowego jezyka lub regionu. Dla bardziej szczegolowych informacji na temat obslugi czcionek w roznych jezykach, zobacz nasz przewodnik zarzadzania czcionkami.

Istnieja dwie kwestie do rozwazenia przy pracy z jezykami miedzynarodowymi:

Jakie kroje pisma wspieraja moj zestaw znakow?

Na serwerze musi być zainstalowana czcionka wspierająca zestaw znaków, który chcesz użyć. Zwykle sa automatycznie instalowane na nowoczesnych serwerach webowych, ale starsze serwery moga byc zainstalowane z starszymi wersjami niektorych czcionek, takich jak Arial, ktore moga nie miec pelnego wsparcia dla UTF-8.

W celu rozwiazywania problemow zwiazanych z czcionkami, szczegolnie przy wdrazaniu do roznych srodowisk, sprawdz nasz przewodnik o rozwiazywaniu problemow z czcionkami. Jesli wdrazasz do uslug w chmurze, takich jak Azure lub AWS, mozesz potrzebowac zapewnic poprawna instalacje czcionek, jak szczegolowo opisano w naszym przewodniku o wdrazaniu na platformie Azure lub AWS.

Alternatywnym rozwiazaniem jest okreslenie Fonta Webowego w swoim CSS, takiego jak te dostarczane przez Google Fonts. Wiecej informacji mozna znalezc w artykule Jak uzyc czcionek Google w swoim nastepnym projekcie projektowania w sieci. IronPDF w pelni wspiera czcionki webowe, co moze byc szczegolnie przydatne przy pracy ze specjalnymi zestawami znakow lub gdy potrzebujesz konsekwentnej prezentacji czcionek na roznych platformach.

Jak ustawic wlasciwe kodowanie wejsciowe?

Mozesz musiec okreslic kodowanie wejsciowe swojego dokumentu, aby byl on renderowany poprawnie. Prawidlowa konfiguracja kodowania jest istotna dla dokladnej reprezentacji znakow w twoich dokumentach PDF. Oto metody zapewniajace poprawne kodowanie:

Dodanie tagu HTML "Meta Charset" np.

<meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
HTML

Dodatkowo, podczas pracy z trescia UTF-8 z zewnetrznych zrodel lub plikow, moze zajsc potrzeba obslugi roznych scenariuszy kodowania. Nasz kompleksowy przewodnik na temat tworzenia nowych PDF-ow obejmuje rozne podejscia do pracy z zakodowana zawartoscia.

Dla zaawansowanych scenariuszy obejmujacych wiele jezykow i skomplikowane uklady, IronPDF oferuje rozlegle opcje konfiguracji. Mozesz kontrolowac rozne aspekty generowania PDF, w tym orientacje strony, marginesy i wiele innych, jak szczegolowo opisano w naszym przewodniku o opcjach renderowania.

Gotowy, aby sprawdzić, co jeszcze możesz zrobić? Sprawdz nasza strone z poradnikami tutaj: Dodatkowe funkcje

Często Zadawane Pytania

How do I create a UTF-8 encoded PDF in C#?

To create UTF-8 encoded PDFs with IronPDF, initialize a ChromePdfRenderer, set the InputEncoding property to UTF8 using renderer.RenderingOptions.InputEncoding = System.Text.Encoding.UTF8, then use RenderHtmlAsPdf method to convert HTML containing international characters to PDF.

What languages does IronPDF support for PDF generation?

IronPDF supports all international languages including Chinese, Japanese, Arabic, Thai, and other languages that use Unicode characters. Any character that can be rendered in a Chrome browser will be properly displayed in PDFs generated by IronPDF.

Do I need to include anything special in my HTML for UTF-8 support?

Yes, you should always include a meta charset='utf-8' tag in your HTML when working with international characters. This ensures proper character encoding when IronPDF renders the HTML to PDF.

Can IronPDF handle right-to-left languages and complex scripts?

Yes, IronPDF's Chrome rendering engine provides complete support for complex scripts and right-to-left languages like Arabic and Hebrew, ensuring consistent and accurate rendering across all platforms.

What is the minimum code required to generate a UTF-8 PDF?

The minimal code requires just three steps: var renderer = new IronPdf.ChromePdfRenderer(); renderer.RenderingOptions.InputEncoding = System.Text.Encoding.UTF8; var pdf = renderer.RenderHtmlAsPdf('Your UTF-8 text'); pdf.SaveAs('output.pdf');

How does IronPDF ensure Unicode character compatibility?

IronPDF complies with the Chrome standard for rendering, which means it fully supports UTF-8 encoding and Unicode characters. This ensures that any character rendered properly in Chrome will be accurately displayed in PDFs created with IronPDF.

Curtis Chau
Autor tekstów technicznych

Curtis Chau posiada tytuł licencjata z informatyki (Uniwersytet Carleton) i specjalizuje się w front-endowym rozwoju, z ekspertką w Node.js, TypeScript, JavaScript i React. Pasjonuje się tworzeniem intuicyjnych i estetycznie przyjemnych interfejsów użytkownika, Curtis cieszy się pracą z nowoczesnymi frameworkami i tworzeniem dobrze zorganizowanych, atrakcyjnych wizualnie podrę...

Czytaj więcej
Gotowy, aby rozpocząć?
Nuget Pliki do pobrania 18,135,201 | Wersja: 2026.4 just released
Still Scrolling Icon

Wciąż przewijasz?

Czy chcesz szybko dowodu? PM > Install-Package IronPdf
Uruchom przykład i zobacz, jak Twój kod HTML zamienia się w plik PDF.