FAQ
این صفحه شامل پاسخ به سوالات متداول است. لطفا صفحه فعلی را یاد بگیرید – شاید این به شما اجازه دهد تا مشکل خود را به سرعت حل کنید.
اگر پاسخ سوال خود را پیدا نکردید، می توانید در انجمن پشتیبانی بپرسید. برای کسب اطلاعات در مورد چگونگی گزارش صحیح سوال یا مشکل خود، به پشتیبانی فنی صفحه.
عمومی
سوال: Aspose.Words چیست؟
Aspose.Words برای Java یک کتابخانه کلاس است که به برنامه های شما اجازه می دهد تا انواع مختلفی از وظایف پردازش اسناد را انجام دهند. با Aspose.Words برای Java، می توانید اسناد را بدون برنامه های شخص ثالث تولید، تغییر، تبدیل، رندر و چاپ کنید.
جزئیات را می توانید در اسناد ما پیدا کنید.
سوال: معنی “Aspose.Words نیازی به درخواست های شخص ثالث ندارد"چیست ؟
Aspose.Words برای Java نیازی به نصب هیچ برنامه شخص ثالث یا بسته های نرم افزاری اضافی برای کار ندارد. فقط دانلود و نصب Aspose.Words همانطور که در نصب و راه اندازی مقاله و شروع کنید.
سوال: Aspose.Words چه پلتفرم هایی را پشتیبانی می کند ؟
Aspose.Words برای Java بیشتر محیط های توسعه محبوب و سیستم عامل های استقرار را پوشش می دهد. API آن می تواند برای توسعه برنامه های کاربردی برای طیف گسترده ای از سیستم عامل ها مانند Windows، Linux و Mac OS و سیستم عامل های مختلف استفاده شود.
برای جزئیات، به نمای کلی محصول صفحه و سیستم عامل ها و قابلیت Interop بخش.
سوال: Aspose.Words از چه فرمت های سندی پشتیبانی می کند ؟
Aspose.Words برای Java از اکثر فرمت های سند محبوب مانند DOC, DOCX, HTML, Markdown, PDF, XML, و دیگران.
شما می توانید لیست کامل فرمت های پشتیبانی شده را در فرمت های سند پشتیبانی شده صفحه.
سوال: چگونه می توانم Aspose.Words رایگان را امتحان کنم ؟
شما می توانید این کار را به دو روش انجام دهید – با استفاده از نسخه آزمایشی یا مجوز موقت 30 روزه. نسخه آزمایشی همان نسخه خریداری شده است، عملکرد کامل محصول را فراهم می کند اما هنگام بارگذاری و ذخیره یک علامت آبی ارزیابی در بالای سند اضافه می کند و حداکثر اندازه سند را به چند صد پاراگراف محدود می کند. مجوز موقت به شما اجازه می دهد تا Aspose.Words را بدون محدودیت های آزمایشی برای 30 روز تست کنید.
مشاهده صدور مجوز و اشتراک صفحه برای اطلاعات بیشتر.
س: چگونه می توانم Aspose.Words بخرم؟
برای خرید مجوز Aspose.Words باید به خرید صفحه، محصول “Aspose.Words” و نوع مجوز مناسب شما را انتخاب کنید. سپس لایسنس را به سبد خرید خود اضافه کنید و دستورالعمل های سبد خرید را دنبال کنید.
پس از خرید، برای مجوز به عنوان توصیف شده در مجوز خریداری شده بخش.
جزئیات نحوه نصب Aspose.Words را می توان در نصب و راه اندازی صفحه.
س: چگونه می توانم حمایت بگیرم؟
از انجمن پشتیبانی فنی رایگان استفاده کنید. برای جزئیات در مورد چگونگی گزارش صحیح یک مشکل و آنچه باید قبل از تماس با انجمن انجام شود، به پشتیبانی فنی صفحه.
رندر کردن یک سند
سوال: چرا طرح و فونت های موجود در سند خروجی با اصل متفاوت است ؟
فونت ممکن است در دسترس نباشد، یا فرمت فونت توسط Microsoft Word پشتیبانی می شود اما توسط Aspose.Words پشتیبانی نمی شود. Aspose.Words انجام خواهد داد تعویض فونت.
برای بررسی اینکه فونت گم شده یا نه:
- در Aspose.Words از هشدارهای جایگزینی فونت استفاده کنید (برای جزئیات، به بخش “چگونه تشخیص دهیم که فونت جایگزین شده است” مراجعه کنید دستکاری و جایگزینی فونت های TrueType مقاله).
- در Microsoft Word جعبه گفتگو “تعویض فونت” را باز کنید (فایل → گزینه ها → پیشرفته → تعویض فونت).
سوال: چرا فونت فال بک روی پلتفرم های غیرWindows کار نمی کند و کاراکترهای یونیکد با .گلیف نوتدف?
ما اغلب می توانیم گلیف .notdef
را به جای یک کاراکتر یونیکد ببینیم. این معمولا یک جعبه یا یک گلیف سوال است.
این به این دلیل است که تنظیمات Microsoft Office fallback به طور پیش فرض انتخاب شده اند و فونت های Microsoft Office در دسترس نیستند. کاربران باید فونت های اداری Microsoft را نصب کنند یا تنظیمات پشتیبان را تغییر دهند.
سوال: چرا ممکن است متن اسکریپت پیچیده، مانند تایلندی یا عبری، به دلایلی به طور نادرست نمایش داده شود، مانند موقعیت اشتباه برای دیاکریت یا لیگاتورهای نادرست ؟
برخی از فونت های پیچیده اسکریپت نیاز به ویژگی های پیشرفته تایپوگرافی دارند تا به درستی نمایش داده شوند. تایپوگرافی پیشرفته به طور پیش فرض در Aspose.Words غیرفعال است. کاربران باید تایپوگرافی پیشرفته را با TextShaperFactory فعال کنند.
سوال: آیا برای فونت هایی که استفاده می کنم به فایل های مجوز نیاز دارم ؟
آره، داري. بنابراین، هنگام کپی کردن فونت ها، به خاطر داشته باشید که اکثر فونت ها دارای حق نسخه برداری هستند. مجوزهای فونت را از قبل پیدا کنید و تأیید کنید که می توان آنها را آزادانه به دستگاه دیگری منتقل کرد.
آشیانه Mail Merge
سوال: چرا هیچ فیلد ادغام شده ای در خروجی تولید شده وجود ندارد ؟
نام اصلی فیلد ادغام بدون جایگزینی با داده های مورد نیاز از منبع داده یکسان باقی می ماند، سپس:
- بررسی کنید که داده ها به درستی در جداول بارگذاری شده اند: TableName را با تمام کلید های اصلی و روابط مورد نیاز به درستی تنظیم کنید.
- بررسی کنید که فیلد های ادغام به درستی نامگذاری شده اند. از روش GetFieldNames برای بدست آوردن تمام نام های merge fields استفاده کنید و اطمینان حاصل کنید که نام merge fields در قالب شما با نام منبع داده شما مطابقت دارد.
سوال: چرا خروجی ادغام آشیانه ای داده های جدول فرزند را برای اولین ورودی در جدول والدین نمایش نمی دهد بلکه تمام آیتم های آخرین ورودی در جدول والدین را نمایش می دهد، حتی آنهایی که در واقع به آن مرتبط نیستند ؟
این به این دلیل است که مناطق ادغام در قالب به درستی تشکیل نشده اند، که می تواند تمام مناطق آشیانه ای Mail Merge را متوقف کند تا هیچ چیز را نمایش ندهد. تگ باز کردن StartTable و تگ بسته شدن EndTable باید با هم مطابقت داشته باشند و در یک ردیف یا سلول باشند. به عنوان مثال، اگر شروع به لانه سازی مناطق ادغام در سلول یک جدول کنید، باید منطقه ادغام را در همان ردیف سلول اول پایان دهید.
سوال: چرا هر ورودی از جدول والدین هر آیتم را در جدول کودک نمایش می دهد، حتی آنهایی که واقعا به آن مرتبط نیستند ؟
این به این دلیل است که رابطه بین جداول والدین و فرزند تنظیم نشده است یا آنها به اشتباه تنظیم شده اند. لازم است که:
- اطمینان از یکپارچگی داده ها در DataSet خود و استفاده از DataRelation شیء برای نشان دادن رابطه والدین و فرزند بین جداول داده های مرتبط.
- بخش “نحوه تنظیم روابط داده ها در مناطق آشیانه ای Mail Merge” را در مقاله بررسی کنید آشیانه Mail Merge با مناطق.
سوال: چرا یک استثنا است: “سیستم.ArgumentException: این محدودیت را نمی توان فعال کرد زیرا همه مقادیر ارزش های مادر مربوطه را ندارند " در حالی که mail merge آشیانه ای را اجرا می کنند?
این اتفاق می افتد زیرا هر رکورد والدین دارای رکورد کودک نیست بنابراین منبع داده شما با معیارهای زیر مطابقت ندارد: every row in the parent table should have a one-to-one relationship with the rows of the child table based on the primary and foreign keys.
وقتی یک DataRelation ایجاد می کنید، محدودیت های کلید خارجی را غیرفعال کنید.
اضافه کردن یا وارد کردن یک سند
سوال: چرا محتوای اضافه شده به یک سند در یک صفحه ظاهر نمی شود ؟
نتیجه ضمیمه در یک صفحه جداگانه به دلیل تفاوت در تنظیمات PageSetup برای بخش هایی که اسناد با هم ضمیمه شده اند، ظاهر می شود. تنظیمات یکسان PageSetup را برای بخش هایی که اسناد به هم پیوسته اند، ایجاد کنید.
تبدیل یک سند
سوال: چگونه DOCX را به PDF تبدیل کنیم ؟
همچنین بسیار آسان است، فقط یک سند را به مدل بارگذاری کنید و آن را به هر فرمت پشتیبانی شده ذخیره کنید.
مثال کد زیر روند تبدیل یک فایل DOCX به PDFرا نشان می دهد:
// Open the source DOCX document.
Document doc = new Document(dataDir + "Input.docx");
// Save the document to PDF format.
doc.save(dataDir + "output.pdf", SaveFormat.Pdf);
دستکاری با یک سند
سوال: چگونه یک سند را صفحه به صفحه تقسیم کنیم ؟
Aspose.Words شما را قادر می سازد تا یک صفحه سند چند صفحه ای را بر اساس صفحه تقسیم کنید.
مثال کد زیر نشان می دهد که چگونه یک سند را تقسیم کنید و هر صفحه را به عنوان یک سند جداگانه ذخیره کنید:
Document doc = new Document(dataDir + "TestFile (Split).docx");
int pageCount = doc.getPageCount();
// Save each page as a separate document.
for (int page = 0; page <= pageCount; page++)
{
Document extractedPage = doc.extractPages(page, 1);
extractedPage.save(dataDir + "SplitDocumentPageByPageOut_" + (page + 1) + ".docx");
}
سوال: چگونه یک رمزگذاری شده را باز کنیم
شما می توانید سعی کنید یک سند رمزگذاری شده را بدون رمز عبور باز کنید، که باید منجر به یک استثنا شود.
مثال کد زیر نشان می دهد که چگونه یک سند رمزگذاری شده با یک رمز عبور را باز کنید:
// Create a document.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
builder.write("Hello world!");
//OoxmlSaveOptions only applies to Docx, Docm, Dotx, Dotm, or FlatOpc formats.
OoxmlSaveOptions options = new OoxmlSaveOptions(SaveFormat.DOCX);
// Set a password with which the document will be encrypted, and which will be required to open it.
options.setPassword("MyPassword");
doc.save(getArtifactsDir() + "OoxmlSaveOptions.SaveAsDocx.docx", options);
// We will not be able to open this document with Microsoft Word or
// Aspose.Words without providing the correct password.
try
{
doc = new Document(getArtifactsDir() + "OoxmlSaveOptions.Password.docx"));
}
catch (Exception e)
{
Assert.assertTrue(e instanceof IncorrectPasswordException);
}
س: چگونه یک سند را چاپ کنیم؟
برای پاسخ دقیق، مقاله را بیاموزید چاپ یک سند به صورت برنامه ریزی شده یا با استفاده از دیالوگ ها.