Spire.Office for Java 9.3.1 のリリースをお知らせいたします。このバージョンには、いくつかの素晴らしい機能が含まれています。たとえば、Spire.PDF for Java では、PdfTextReplacer クラスが追加され、PDF のテキストの置換と InkAnnotation の追加がサポートされます。また、Spire.XLS for Java ではAI機能がサポートされ、Spire.Presentation for Java では段落に数式を追加する機能や形状の表示色を取得する機能がサポートされます。さらに、このバージョンでは多くの既知の問題が修正されています。詳細は以下に記載されています。
Spire.Office for Java 9.3.1 をダウンロードするには、リンクをクリックしてください
このリリースで行われた変更のリストは次のとおりです
Spire.Doc for Java
カテゴリー |
ID |
説明 |
Improvement |
SPIREDOC-10325 |
Word を OFD に変換した後の結果ファイルのサイズを最適化しました。 |
New feature |
- |
MergeImageFieldEventArgs イベントに setImageLink() を追加して、差し込み印刷画像へのハイパーリンクの追加をサポートします。
Document document = new Document();
document.loadFromFile(inputFile);
String[] fieldNames = new String[]{"ImageFile"};
String[] fieldValues = new String[]{inputFile_img};
document.getMailMerge().MergeImageField = new MergeImageFieldEventHandler() {
@Override
public void invoke(Object sender, MergeImageFieldEventArgs args) {
mailMerge_MergeImageField(sender, args);
}
};
document.getMailMerge().execute(fieldNames, fieldValues);
document.saveToFile(outputFile, FileFormat.Docx);
private static void mailMerge_MergeImageField(Object sender, MergeImageFieldEventArgs field) {
String filePath = field.getImageFileName();
if (filePath != null && !"".equals(filePath)) {
try {
field.setImage(filePath);
field.setImageLink("https://www.baidu.com/");
} catch (Exception e) {
e.printStackTrace();
}
} |
New feature |
SPIREDOC-9369 |
getFieldOptions() メソッドを追加して、フィールド更新時のフィールド プロパティの設定をサポートします。
document.getFieldOptions().setCultureSource(FieldCultureSource.CurrentThread); |
New feature |
- |
hasDigitalSignature() メソッドを追加して、ドキュメントにデジタル署名があるかどうかの判断をサポートします。
Document.hasDigitalSignature("filepath"); |
New feature |
SPIREDOC-9455 |
integrateFontTableTo メソッドを追加して、ソースドキュメントからターゲットドキュメントへのFonttableデータのコピーをサポートします。
sourceDoc.integrateFontTableTo(Document destDoc); |
New feature |
SPIREDOC-9869 |
HtmlUrlLoadEvent イベントを追加して、HTML ファイルをロードするときにファイル内の URL をロードする制御をサポートします。
public static void main(String[] args) {
Document document = new Document();
document.HtmlUrlLoadEvent = new MyDownloadEvent();
document.loadFromFile(inputFile, FileFormat.Html, XHTMLValidationType.None);
document.saveToFile(outputFile, FileFormat.PDF);
}
static class MyDownloadEvent extends HtmlUrlLoadHandler {
@Override
public void invoke(Object o, HtmlUrlLoadEventArgs htmlUrlLoadEventArgs) {
try {
byte[] bytes = downloadBytesFromURL(htmlUrlLoadEventArgs.getUrl());
htmlUrlLoadEventArgs.setDataBytes(bytes);
} catch (Exception e) {
e.printStackTrace();
}
}
}
public static byte[] downloadBytesFromURL(String urlString) throws Exception {
URL url = new URL(urlString);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setRequestMethod("GET");
connection.setConnectTimeout(5000);
connection.setReadTimeout(5000);
int responseCode = connection.getResponseCode();
if (responseCode == HttpURLConnection.HTTP_OK) {
InputStream inputStream = connection.getInputStream();
ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
byte[] buffer = new byte[1024];
int bytesRead;
while ((bytesRead = inputStream.read(buffer)) != -1) {
outputStream.write(buffer, 0, bytesRead);
}
outputStream.close();
return outputStream.toByteArray();
} else {
throw new Exception("Failed to download content. Response code: " + responseCode);
}
} |
New feature |
- |
setCustomFonts(InputStream[] fontStreamList) メソッドを追加して、ストリームによるカスタム フォントの設定をサポートします。
document.setCustomFonts(InputStream[] fontStreamList); |
New feature |
- |
clearCustomFontsFolders() メソッドを新しい clearCustomFonts() メソッドに置き換えます。
document.clearCustomFonts(); |
New feature |
- |
setGlobalCustomFontsFolders(InputStream[] fontStreamList) メソッドを新しい setGlobalCustomFonts(InputStream[] fontStreamList) メソッドに置き換えます。
Document.setGlobalCustomFonts(InputStream[] fontStreamList); |
New feature |
- |
clearGlobalCustomFontsFolders() メソッドを新しい clearGlobalCustomFonts() メソッドに置き換えます。
Document.clearGlobalCustomFonts(); |
Spire.XLS for Java
カテゴリー |
ID |
説明 |
New feature |
- |
AIの機能をサポートし、ドキュメントの計算、範囲の結合、画像の生成、ファイルのアップロード、質問と翻訳をAIの支援で行うことができます。 |
Bug |
SPIREXLS-5096 |
Excelドキュメントを解析する際にメモリ消費量が高くなる問題を最適化します。 |
Bug |
SPIREXLS-5136 |
直接ロードと保存後にExcelドキュメントを開く際にエラーが報告される問題を修正します。 |
Bug |
SPIREXLS-5138 |
ワークシートテーブルをコピーした後に形状が失われる問題を修正します。 |
Spire.PDF for Java
カテゴリー |
ID |
説明 |
New feature |
SPIREPDF-4354 |
PdfTextReplacerクラスを追加して、PDFのテキストを置換する機能をサポートします。
PdfDocument doc = new PdfDocument();
doc.loadFromFile("Input.pdf");
PdfPageBase page = doc.getPages().get(0);
PdfTextReplacer textReplacer = new PdfTextReplacer(page);
textReplacer.replaceAllText("old", "NEW");
doc.saveToFile("output.pdf");
doc.dispose(); |
New feature |
SPIREPDF-6591 |
PDFにInkAnnotationを追加する機能をサポートします。
PdfDocument doc = new PdfDocument();
PdfPageBase pdfPage = doc.getPages().add();
List<int[]> inkList = new ArrayList<>();
int[] intPoints = new int[]
{
100,800,
200,800,
200,700
};
inkList.add(intPoints);
PdfInkAnnotation ia = new PdfInkAnnotation(inkList);
ia.setColor(new PdfRGBColor(Color.RED));
ia.getBorder().setWidth(12);
ia.setText("e-iceblue");
((PdfNewPage) pdfPage).getAnnotations().add(ia);
doc.saveToFile("inkannotation.pdf"); |
Bug |
SPIREPDF-6606 |
PDF署名の時間をシステムのローカル時間に合わせて最適化します。 |
Bug |
SPIREPDF-6548 |
pdfDocument.getConformance()を使用して取得したPDFの種類が正しくない問題を修正します。 |
Bug |
SPIREPDF-6554 |
setRowSpan()を2回使用すると"StackOverflow"例外が発生する問題を修正します。 |
Bug |
SPIREPDF-6581 |
OFDをPDFに変換した後にコンテンツが失われる問題を修正します。 |
Spire.Presentation for Java
カテゴリー |
ID |
説明 |
New feature |
SPIREPPT-2210 |
段落に数式を追加する機能をサポートします。
Presentation ppt = new Presentation();
String latexMathCode="x^{2}+\\sqrt{x^{2}+1=2}";
IAutoShape shape=ppt.getSlides().get(0).getShapes().appendShape(ShapeType.RECTANGLE,new Rectangle2D.Float(30,100,400,200));
shape.getTextFrame().getParagraphs().clear();
ParagraphEx p=new ParagraphEx();
shape.getTextFrame().getParagraphs().append(p);
PortionEx portionEx=new PortionEx("Test");
p.getTextRanges().append(portionEx);
p.appendFromLatexMathCode(latexMathCode);
PortionEx portionEx2=new PortionEx("Hello");
p.getTextRanges().append(portionEx2);
ppt.saveToFile(outputFile, FileFormat.AUTO); |
New feature |
SPIREPPT-2422 |
図形の表示色を取得する機能をサポートします。
Presentation ppt = new Presentation();
ppt.loadFromFile("input.pptx");
IAutoShape shape = (IAutoShape)ppt.getSlides().get(0).getShapes().get(0);
System.out.println(shape.getDisplayFill().getFillType().getName());
System.out.println(shape.getDisplayFill().getSolidColor().getColor()); |
Bug |
SPIREPPT-2456 |
ドキュメントをマージする際にアプリケーションが"DocumentEditException"をスローする問題を修正します。 |