チュートリアル
簡単にライブラリーを使用するためのチュートリアルコレクション
Spire.XLS for Java 13.12.12のリリースをお知らせいたします。このバージョンでは、WPSツールで追加された埋め込み画像の取得をサポートしています。 XLSMからPDFへの変換機能も強化されました。 また、取得されたテキストのフォント サイズが正しくない問題など、いくつかの既知の問題も修正されました。 詳細は以下の内容を読んでください。
カテゴリー | ID | 説明 |
New feature | SPIREXLS-4971 | WPS ツールを使用して追加された埋め込み画像を取得するための worksheet.getCellImages() メソッドが追加されました。
Workbook workbook = new Workbook(); workbook.loadFromFile("sample.xlsx"); Worksheet sheet = workbook.getWorksheets().get(0); ExcelPicture[] picture = sheet.getCellImages(); for (int i = 0; i < picture.length; i++) { ExcelPicture ep = picture[i]; BufferedImage image = ep.getPicture(); ImageIO.write(image,"PNG", new File(outputFile + String.format("pic_%d.png",i))); } |
Bug | SPIREXLS-4971 | WPS ツールで追加された埋め込み画像を取得するときに、プログラムが「Index is less than 0 or more than or equal to the list count.」をスローする問題が修正されました。 |
Bug | SPIREXLS-4996 | Excel 文書を読み込むときにプログラムがハングする問題が修正されました。 |
Bug | SPIREXLS-5010 | 取得したテキストのフォントサイズが正しくない問題が修正されました。 |
Bug | SPIREXLS-5021 | 保存されたExcel文書内のグラフの座標軸データが正しくない問題が修正されました。 |
Bug | SPIREXLS-5024 | XLSM を PDF に変換するときに、プログラムが「java.lang.StringIndexOutOfBoundsException」をスローする問題が修正されました。 |
大量のデータを含む Excel ドキュメントを処理する際には、特定の情報を簡単に見つけるために、特定のセルに背景色やパターンを設定することができます。Microsoft Excel では、「塗りつぶしの色」をクリックするだけで、この機能を実現できます。この記事では、Spire.XLS for Java を使用して、Excel で指定したセルまたはセル範囲の背景色とパターンスタイルをプログラムで設定する方法を示します。
まず、Spire.XLS for Java を Java プロジェクトに追加する必要があります。JAR ファイルは、このリンクからダウンロードできます。Maven を使用する場合は、次のコードをプロジェクトの pom.xml ファイルに追加する必要があります。
<repositories>
<repository>
<id>com.e-iceblue</id>
<name>e-iceblue</name>
<url>https://repo.e-iceblue.com/nexus/content/groups/public/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>e-iceblue</groupId>
<artifactId>spire.xls</artifactId>
<version>13.11.6</version>
</dependency>
</dependencies>
Spire.XLS for Java が提供する CellRange.getStyle().setColor() メソッドと CellRange.getStyle().setFillPattern() メソッドは、それぞれ指定されたセル範囲の背景色とパターン スタイルの設定をサポートします。詳細な手順は次のとおりです。
import com.spire.xls.*;
import java.awt.*;
public class CellBackground {
public static void main(String[] args) {
//Workbookオブジェクトを作成する
Workbook workbook = new Workbook();
//サンプル Excel ドキュメントを読み込む
workbook.loadFromFile("Sample.xlsx");
//最初のワークシートを取得する
Worksheet worksheet= workbook.getWorksheets().get(0);
//「A1:E1」と「A2:A10」の背景色を設定する
worksheet.getRange().get("A1:E1").getStyle().setColor(Color.green);
worksheet.getRange().get("A2:A10").getStyle().setColor(Color.yellow);
//「E8」の背景色を設定する
worksheet.getRange().get("E8").getStyle().setColor(Color.red);
//「C4:D5」の塗りつぶしパターンのスタイルを設定する
worksheet.getRange().get("C4:D5").getStyle().setFillPattern(ExcelPatternType.Percent25Gray);
//結果文書を保存する
workbook.saveToFile("CellBackground.xlsx", ExcelVersion.Version2013);
}
}
結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。
ワークシートのデータを処理する際には、特定のデータをより簡単に見つけたり読み取ったりするために、列を再配置する必要がある場合があります。Microsoft Excel では、Shift キーを押しながらドラッグすることで列を簡単に移動できます。また、プログラミングの方法を使ってもこの機能を実現することができます。この記事では、Spire.XLS for Java を使用して、Excel で列の順序を変更する方法を示します。
まず、Spire.XLS for Java を Java プロジェクトに追加する必要があります。JAR ファイルは、このリンクからダウンロードできます。Maven を使用する場合は、次のコードをプロジェクトの pom.xml ファイルに追加する必要があります。
<repositories>
<repository>
<id>com.e-iceblue</id>
<name>e-iceblue</name>
<url>https://repo.e-iceblue.com/nexus/content/groups/public/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>e-iceblue</groupId>
<artifactId>spire.xls</artifactId>
<version>13.11.6</version>
</dependency>
</dependencies>
Spire.XLS for Java は、Excel の列の順序のカスタマイズをサポートしています。以下に詳細な手順を示します。
import com.spire.xls.FileFormat;
import com.spire.xls.Workbook;
import com.spire.xls.Worksheet;
public class RearrangeColumns {
public static void main(String[] args) {
//Workbookオブジェクトを作成する
Workbook workbook = new Workbook();
//Excelファイルを読み込む
workbook.loadFromFile( "Sample.xlsx");
//最初のワークシートを取得する
Worksheet worksheet = workbook.getWorksheets().get(0);
//新しい列の順序を設定する「列インデックスは 0 から計算される」
int[] newColumnOrder = new int[]{4, 0, 1, 2, 3, 5};
//一時的なワークシートを追加する
Worksheet newSheet = workbook.getWorksheets().add("temp");
//最初のワークシートから一時シートにデータをコピーする
newSheet.copyFrom(worksheet);
//newColumnOrder 配列をループする
for (int i = 0; i < newColumnOrder.length; i++) {
//一時なワークシートから最初のシートに列をコピーする
newSheet.getColumns()[newColumnOrder[i]].copy(worksheet.getColumns()[i],true,true);
//最初のシートの特定の列の幅を一時なシートの幅に設定する
worksheet.getColumns()[i].setColumnWidth(newSheet.getColumns()[newColumnOrder[i]].getColumnWidth());
}
//一時なワークシートを削除する
workbook.getWorksheets().remove(newSheet);
//ワークブックを別の Excel ファイルに保存する
workbook.saveToFile("output/MoveColumn.xlsx", FileFormat.Version2016);
}
}
結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。
Spire.Doc 11.12.4のリリースをお知らせいたします。このバージョンでは、WordからPostScriptへのテキスト整形機能が追加されました(.NET 4.6 以降のバージョンをサポート)。詳細は以下の内容を読んでください。
カテゴリー | ID | 説明 |
New feature | - | WordからPostScriptへのテキスト整形機能が追加されました(.NET 4.6 以降のバージョンをサポート)。
Document document = new Document(); document.LoadFromFile("input.docx"); document.LayoutOptions.UseHarfBuzzTextShaper = true; // trueで有効、falseで無効 document.SaveToFile("output.ps", FileFormat.PostScript); |
PDF は、さまざまなプラットフォームでドキュメントを共有および保存するための標準的な形式となっており、プロフェッショナルな場面だけでなく個人的な環境でも広く使用されています。ただし、高品質な PDF ドキュメントを作成するには、複数の確認と修正が必要です。この文脈において、PDF ファイルを効率的に比較し、その違いを明確に特定する方法を知っていることは非常に重要です。これにより、ドキュメント編集者はドキュメントの異なるバージョン間の相違点を素早く特定できるため、ドキュメントの作成とレビューのプロセスでかなりの時間を節約することができます。本記事では、C# プログラムで Spire.PDF for .NET を使用して PDF ドキュメントを比較する方法を説明します。
まず、Spire.PDF for .NET パッケージに含まれている DLL ファイルを .NET プロジェクトの参照として追加する必要があります。DLL ファイルは、このリンクからダウンロードするか、NuGet を介してインストールできます。
PM> Install-Package Spire.PDF
Spire.PDF for .NET を使用すると、開発者は PdfComparer クラスのインスタンスを作成し、2 つの PdfDocument オブジェクトをパラメータとして渡し、PdfComparer.Compare(String fileName) メソッドを使用して 2 つのドキュメントを比較することができます。比較結果は新しい PDF ドキュメントとして保存され、2 つの PDF 間の差異をさらに分析やレビューすることができます。
比較結果の PDF ドキュメントでは、左側に元の 2 つのドキュメントが表示され、削除された項目は赤色で、追加された項目は黄色で表示されます。
以下に、2つの PDF ドキュメントを比較するための詳細な手順を示します:
using Spire.Pdf;
using Spire.Pdf.Comparison;
namespace ExtractTablesToExcel
{
class Program
{
static void Main(string[] args)
{
// PdfDocumentクラスのオブジェクトを作成し、PDFドキュメントをロードします
PdfDocument pdf1 = new PdfDocument();
pdf1.LoadFromFile("サンプル1.pdf");
// 別のPdfDocumentクラスのオブジェクトを作成し、別のPDFドキュメントをロードします
PdfDocument pdf2 = new PdfDocument();
pdf2.LoadFromFile("サンプル2.pdf");
// PdfComparerクラスのオブジェクトを作成し、2つのドキュメントを比較します
PdfComparer comparer = new PdfComparer(pdf1, pdf2);
// 2つのドキュメントを比較し、比較結果を別のPDFドキュメントに保存します
comparer.Compare("output/比較の結果.pdf");
pdf1.Close();
pdf2.Close();
}
}
}
PdfComparer クラスのインスタンスを作成した後、開発者は PdfComparer.Options.SetPageRange() メソッドを使用して比較するページ範囲を設定することもできます。これにより、2 つの PDF ドキュメント内の指定されたページ範囲のみを比較することが可能です。具体的な手順は以下の通りです:
using Spire.Pdf;
using Spire.Pdf.Comparison;
namespace ExtractTablesToExcel
{
class Program
{
static void Main(string[] args)
{
// PdfDocumentクラスのオブジェクトを作成し、PDFドキュメントをロードします
PdfDocument pdf1 = new PdfDocument();
pdf1.LoadFromFile("サンプル1.pdf");
// 別のPdfDocumentクラスのオブジェクトを作成し、別のPDFドキュメントをロードします
PdfDocument pdf2 = new PdfDocument();
pdf2.LoadFromFile("サンプル2.pdf");
// PdfComparerクラスのオブジェクトを作成し、2つのドキュメントを比較します
PdfComparer comparer = new PdfComparer(pdf1, pdf2);
// 比較するページ範囲を設定します
comparer.Options.SetPageRanges(1, 1, 1, 1);
// 指定されたページ範囲を比較し、比較結果を別のPDFドキュメントに保存します
comparer.Compare("output/ページ範囲の比較結果.pdf");
pdf1.Close();
pdf2.Close();
}
}
}
結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。
2023年のクリスマスが近づいています。まずはクリスマスおめでとうございます!
日頃の信頼とご支援に感謝し、弊社は 2023年12月15日から2024年1月15日 まで、今年最大のプロモーション活動を展開いたします。 この期間中、新規および既存のお客様を対象に、さまざまな割引プログラムをご用意しています。弊社製品のテスト結果にご満足いただけましたら、キャンペーン期間中、超低価格でライセンスをご購入いただけます。 すでにライセンスを購入している場合は、更新時にさらに割引を受けることもできます。
キャンペーン期間中に製品を購入する前に、このメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。に連絡してクーポンコードを入手してください。
Spire.Doc for Java 11.12.1のリリースを発表できることを嬉しく思います。このバージョンでは、文字ごとに左右のインデントを設定する機能をサポートしています。 WordからPDF、HTMLへ、HTMLからWordへの変換機能も強化されました。また、セクションの方向を横向きに設定しても有効にならない問題など、いくつかの既知の問題も修正されました。詳細は以下の内容を読んでください。
カテゴリー | ID | 説明 |
New feature | SPIREDOC-9980 | 文字ごとに左右のインデントを設定する機能をサポートしています。
paragraph.getFormat().setLeftIndentChars(2.5f); paragraph.getFormat().setRightIndentChars(5.5f); |
Bug | SPIREDOC-9452 | Word を PDF に変換した後に余分な空白ページが表示される問題が修正されました。 |
Bug | SPIREDOC-9737 | RTF を PDF に変換した後のコンテンツ形式が正しくない問題が修正されました。 |
Bug | SPIREDOC-9838 SPIREDOC-9913 |
リビジョンを受け付ける機能が動作していなかった問題が修正されました。 |
Bug | SPIREDOC-9927 | Word を PDF に変換した後のセル行の高さが不一致になる問題が修正されました。 |
Bug | SPIREDOC-9930 | WordをPDFに変換した後、フローチャートの文字色が正しく表示されない問題が修正されました。 |
Bug | SPIREDOC-9936 | RTFをWordに変換すると項目番号が整わない問題が修正されました。 |
Bug | SPIREDOC-9955 | Word を HTML に変換するときにプログラムが 「java.lang.IllegalArgumentException」をスローする問題が修正されました。 |
Bug | SPIREDOC-9957 | HTMLをWordに変換した後、表の枠線が欠ける問題が修正されました。 |
Bug | SPIREDOC-9962 | Word を HTML に変換すると、下付きテキストのフォント サイズが小さくなる問題が修正されました。 |
Bug | SPIREDOC-9975 | セクションの方向を横向きに設定しても有効にならない問題が修正されました。 |
Bug | SPIREDOC-10030 | HTMLをWordに変換した後、数式が正しく表示されない問題が修正されました。 |
Bug | SPIREDOC-10049 | Word を PDF に変換するときにプログラムが「Non-negative number required」をスローする問題が修正されました。 |
Bug | SPIREDOC-10059 | Word 文書に HTML テキストを挿入するときにプログラムが 「java.lang.StringIndexOutOfBoundsException」をスローする問題が修正されました。 |
Bug | SPIREDOC-9897 | 正規表現を使用したテキスト検索に失敗する問題が修正されました。 |
Bug | SPIREDOC-9857 | Word を PDF に変換した後、テキスト ボックス内の括弧の方向が変わる問題が修正されました。 |
Spire.Presentation 8.12.2のリリースをお知らせいたします。このバージョンでは、マスターページを画像に変換する機能をサポートしています。PPTからPDFへの変換機能が強化されました。 また、グラフラベルの位置を変更した後、効果が正しくなくなる問題が修正されました。詳細は以下の内容を読んでください。
カテゴリー | ID | 説明 |
New feature | SPIREPPT-2397 | マスターページを画像に変換する機能をサポートしています。
Presentation ppt = new Presentation(); ppt.LoadFromFile("1.pptx"); for (int i = 0; i < ppt.Masters[0].Layouts.Count; i++) { Image image = ppt.Masters[0].Layouts[i].SaveAsImage(); String fileName = String.Format("{0}.png", i); image.Save(fileName, System.Drawing.Imaging.ImageFormat.Png); } ppt.Dispose(); |
Bug | SPIREPPT-2394 | PPT を PDF に変換した後のコンテンツ レイアウトが正しくない問題が修正されました。 |
Bug | SPIREPPT-2396 | グラフのラベルの位置を変更した後に効果が正しくなくなる問題が修正されました。 |
テキストボックスは、移動可能な要素であり、ユーザーがテキストを入力または編集することができるようにします。Excel ファイルを処理する際、元のグラフのテキスト説明が不十分な場合、テキストボックスを追加して追加情報をグラフに追加することができます。この記事では、Spire.XLS for Java を使用して、Java で Excel のグラフにテキストボックスを追加する方法を示します。
まず、Spire.XLS for Java を Java プロジェクトに追加する必要があります。JAR ファイルは、このリンクからダウンロードできます。Maven を使用する場合は、次のコードをプロジェクトの pom.xml ファイルに追加する必要があります。
<repositories>
<repository>
<id>com.e-iceblue</id>
<name>e-iceblue</name>
<url>https://repo.e-iceblue.com/nexus/content/groups/public/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>e-iceblue</groupId>
<artifactId>spire.xls</artifactId>
<version>13.11.6</version>
</dependency>
</dependencies>
Spire.XLS for Java が提供する Chart.getShapes().addTextBox() メソッドは、グラフへのテキスト ボックスの挿入をサポートしています。 次に、ITextBoxLinkShape.setText() メソッドを使用して、このテキストボックスにテキストを挿入します。 以下に詳細な手順を示します。
import com.spire.xls.*;
import com.spire.xls.core.*;
public class addTextBoxToChart {
public static void main(String[] args)throws Exception {
//Workbookインスタンスを作成する
Workbook workbook = new Workbook();
//Excelファイルを読み込む
workbook.loadFromFile("Sample.xlsx");
//最初のワークシートを取得する
Worksheet sheet = workbook.getWorksheets().get(0);
//最初のグラフを取得する
Chart chart = sheet.getCharts().get(0);
//グラフにテキストボックスを追加する
ITextBoxLinkShape textbox = chart.getShapes().addTextBox();
textbox.setText("2023年12月12日、中本によって修正された。");
//テキストボックスのサイズと位置を設定する
textbox.setWidth(1100);
textbox.setHeight(480);
textbox.setLeft(2800);
textbox.setTop(480);
//結果ファイルを保存する
workbook.saveToFile("AddTextBoxToChart.xlsx", ExcelVersion.Version2013);
workbook.dispose();
}
}
結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。
Spire.PDF for C++ 9.12.0を発表できることを嬉しく思います。このバージョンでは、PDF から Word への変換機能が強化されました。 さらに、PDF 署名から画像を抽出するときに、プログラムが「ExtractSignatureAsImages」をスローする問題が修正されました。詳細は以下の内容を読んでください。
カテゴリー | ID | 説明 |
Bug | SPIREPDF-6334 | PDF を Word に変換するときに、プログラムが「System.Exception」をスローする問題が修正されました。 |
Bug | SPIREPDF-6339 | PDFをWordに変換すると、コンテンツの一部がぼやけてしまう問題が修正されました。 |
Bug | SPIREPDF-6404 | PDF 署名から画像を抽出するときに、プログラムが「ExtractSignatureAsImages」をスローする問題が修正されました。 |