ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه ترجمه Markdown برای Document Object Model ()DOM))
برای خواندن، دستکاری و اصلاح محتوا و قالب بندی یک سند، باید آن را به آن ترجمه کنید. Aspose.Words Document Object Model ()DOM)
برخلاف اسناد Word، Markdown مطابق با DOM شرح داده شده در Aspose.Words Document Object Model (DOM) مقاله با این حال، Aspose.Words مکانیسم خود را برای ترجمه فراهم می کند Markdown اسناد DOM و عقب، به طوری که ما می توانیم با موفقیت با عناصر خود مانند قالب بندی متن، جداول، هدر و دیگران کار کنیم.
این مقاله توضیح می دهد که چگونه مختلف markdown ویژگی ها را می توان ترجمه کرد Aspose.Words DOM بازگشت به Markdown فرمت
پیچیدگی ترجمه Markdown - DOM - Markdown
مشکل اصلی این مکانیسم نه تنها ترجمه است Markdown برای DOM, اما همچنین برای انجام تحول معکوس - برای نجات سند به عقب Markdown قالب با حداقل ضرر عناصری مانند نقل قول های چند سطحی وجود دارند که تحول معکوس آن ناچیز نیست.
موتور ترجمه ما به کاربران اجازه می دهد نه تنها با عناصر پیچیده در یک موجود کار کنند. Markdown همچنین برای ایجاد سند خود در Markdown قالب با ساختار اصلی از ابتدا برای ایجاد عناصر مختلف، شما نیاز به استفاده از سبک با نام های خاص با توجه به قوانین خاص شرح داده شده بعدا در این مقاله. این سبک ها را می توان به صورت برنامه نویسی ایجاد کرد.
ترجمه عمومی اصول اصول
ما استفاده می کنیم Font قالب بندی برای بلوک های خط هنگامی که هیچ مکاتبات مستقیمی برای یک Markdown ویژگی در Aspose.Words DOM, ما از یک سبک شخصیتی با نامی استفاده می کنیم که از کلمات خاصی شروع می شود.
برای بلوک های container، ما از میراث سبک استفاده می کنیم تا نشان دهیم Markdown ویژگی ها در این مورد، حتی زمانی که هیچ ویژگی ای وجود ندارد، ما همچنین از سبک های پاراگراف با نامی استفاده می کنیم که از برخی کلمات خاص شروع می شود.
لیست های گلوله و سفارش شده بلوک های container در داخل هستند. Markdown همچنین. حضور در آن ها DOM همانند تمام بلوک های دیگر container با استفاده از ارث سبک. علاوه بر این، لیست ها در DOM قالب بندی شماره در هر دو سبک لیست یا قالب بندی پاراگراف مطابقت دارد.
بلوک های خط
ما استفاده می کنیم Font قالب بندی زمانی که ترجمه Bold, Italic یا ~~ markdown ویژگی ها
Markdown ویژگی ویژگی | Aspose.Words |
---|---|
Bold{1} |
Font.Bold = true |
Italic*italic text* |
Font.Italic = true |
Strikethrough~Strikethrough text~ |
Font.StrikeThrough = true |
ما از یک سبک شخصیتی با یک نام استفاده می کنیم که از کلمه شروع می شود. <span notrans="<span notrans=" InlineCode
"="">"> پس از آن یک گزینه اختیاری (.)
و تعدادی از backticks (`)
برای InlineCode
ویژگی اگر تعدادی از backticks از دست رفته باشد، یک backtick به طور پیش فرض مورد استفاده قرار می گیرد.
Markdown ویژگی ویژگی | Aspose.Words |
---|---|
InlineCode{1} |
Font.StyleName = “InlineCode[.][N]” |
Autolink<scheme://domain.com> <email@domain.com> |
The The The The The The FieldHyperlink کلاس |
Link{1} {2} {3} {4}) |
The The The The The The FieldHyperlink کلاس |
Image{1} {2} {3} {4}) |
The The The The The The Shape کلاس |
بلوک های Container
یک سند یک توالی از بلوک های container مانند سرفصل ها، پاراگراف ها، لیست ها، نقل قول ها و دیگران است. بلوک های کانتینر را می توان به دو کلاس تقسیم کرد: بلوک ها و کانتینرهای پیچیده بلوک های لیف فقط می توانند محتوای خطی داشته باشند. ظروف پیچیده، به نوبه خود، می تواند شامل بلوک های دیگر container، از جمله بلوک های لیف باشد.
بلوک های لیف
جدول زیر نمونه هایی از استفاده از Markdown بلوک های لیف در Aspose.Words:
Markdown ویژگی ویژگی | Aspose.Words |
---|---|
HorizontalRule----- |
این یک پاراگراف ساده با شکل افقی متناظر است:DocumentBuilder.InsertHorizontalRule() |
ATX Heading# H1, ## H2, ### H3… |
ParagraphFormat.StyleName = “Heading N” , جایی که (1 = N <= 9)این به سبک داخلی ترجمه می شود و باید دقیقاً از الگوی مشخص شده باشد (هیچ پسوند یا پیشوند مجاز نیست). در غیر این صورت، فقط یک پاراگراف منظم با سبک متناظر خواهد بود |
Setext Heading=== (اگر سطح 1)--- (اگر سطح 2) |
ParagraphFormat.StyleName = “SetextHeading[some suffix]” , بر اساس “Heading N” سبکاگر (N >= 2)، “Heading 2” استفاده می شود، در غیر این صورت “Heading 1” …هر گونه suffix مجاز است اما Aspose.Words واردکنندگان از اعداد به ترتیب “1” و “2” استفاده می کنند |
Indented Code | ParagraphFormat.StyleName = “IndentedCode[some suffix]” |
Fenced Code
|
ParagraphFormat.StyleName = “FencedCode[.][info string]” The The The The The The [.] و [info string] اختیاری هستند |
کانتینرهای پیچیده
جدول زیر نمونه هایی از استفاده از Markdown کانتینرهای پیچیده در Aspose.Words:
Markdown ویژگی ویژگی | Aspose.Words |
---|---|
Quote> quote, >> nested quote |
ParagraphFormat.StyleName = “Quote[some suffix]” پسوند در نام سبک اختیاری است، اما Aspose.Words وارد کننده از شماره 1، 2، 3، در صورت نقل قول های لانه دار استفاده می کند. لانه سازی از طریق سبک های ارثی تعریف می شود |
BulletedList- Item 1 - Item 2 - Item 2a - Item 2b |
لیست های امضا شده با استفاده از شماره پاراگراف نشان داده می شوند:ListFormat.ApplyBulletDefault() سه نوع لیست گلوله وجود دارد. آنها فقط در یک فرمت عددی از سطح اول پراکنده هستند. اینها عبارتند از: ‘-’ , ‘+’ یا ‘*’ به ترتیب |
OrderedList1. Item 1 2. Item 2 1) Item 2a 2) Item 2b |
لیست های سفارش شده با استفاده از شماره پاراگراف نشان داده می شوند:ListFormat.ApplyNumberDefault() 2 عدد نشانگر وجود دارد: “.” و “) نشانگر پیش فرض “. " |
جدول ها
Aspose.Words همچنین اجازه می دهد تا جداول را به هم ترجمه کنید. DOM, در زیر نشان داده شده است:
Markdown ویژگی ویژگی | Aspose.Words |
---|---|
Table A |
b<br /> - |