チュートリアル
簡単にライブラリーを使用するためのチュートリアルコレクション
画像ファイルは、人々の日常生活で最もよく使われるドキュメントの一形態です。時折、特定のフォルダ内の全ての画像ファイルを取り出し、PowerPoint プレゼンテーション用のスライドに変換する必要が生じます。お客様の要件に応じて、画像をシェイプやスライドの背景に変換することが可能です。この記事では、Spire.Presentation for Java を使用して画像を PowerPoint ドキュメントに変換する方法を示します。
まず、Spire.Presentation 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.presentation</artifactId>
<version>8.9.4</version>
</dependency>
</dependencies>
PowerPoint の各スライドの背景として画像が変換される場合、それらは移動や拡大縮小ができません。以下は、Spire.Presentation for Java を使用して、画像を PowerPoint ファイルに背景画像として変換する手順です。
import com.spire.presentation.*;
import com.spire.presentation.drawing.*;
import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.FileInputStream;
public class ConvertImagesAsBackground {
public static void main(String[] args) throws Exception {
//Presentationオブジェクトを作成する
Presentation presentation = new Presentation();
//スライドのサイズの種類を設定する
presentation.getSlideSize().setType(SlideSizeType.SCREEN_16_X_9);
//デフォルトのスライドを削除する
presentation.getSlides().removeAt(0);
//フォルダーから画像ファイルを取得する
File directoryPath = new File("C:\\Users\\Administrator\\Desktop\\Images");
File[] picFiles = directoryPath.listFiles();
//画像をループする
for (int i = 0; i < picFiles.length; i++)
{
//スライドを追加する
ISlide slide = presentation.getSlides().append();
//特定の画像を取得する
String imageFile = picFiles[i].getAbsolutePath();
//画像コレクションに追加する
BufferedImage bufferedImage = ImageIO.read(new FileInputStream(imageFile));
IImageData imageData = presentation.getImages().append(bufferedImage);
//画像をスライドの背景画像として設定する
slide.getSlideBackground().setType(BackgroundType.CUSTOM);
slide.getSlideBackground().getFill().setFillType(FillFormatType.PICTURE);
slide.getSlideBackground().getFill().getPictureFill().setFillType(PictureFillType.STRETCH);
slide.getSlideBackground().getFill().getPictureFill().getPicture().setEmbedImage(imageData);
}
//結果文書を保存する
presentation.saveToFile("ImagesToBackground.pptx", FileFormat.PPTX_2013);
}
}
PowerPoint ファイルで画像を移動可能かつサイズ変更可能にしたい場合は、それらを図形として変換することができます。以下は、Spire.Presentation for Java を使用して PowerPoint 文書内の画像を図形に変換する手順です。
import com.spire.presentation.*;
import com.spire.presentation.drawing.*;
import javax.imageio.ImageIO;
import java.awt.geom.Rectangle2D;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.FileInputStream;
public class ConvertImageToShape {
public static void main(String[] args) throws Exception {
//Presentationオブジェクトを作成する
Presentation presentation = new Presentation();
//スライドのサイズの種類を設定する
presentation.getSlideSize().setType(SlideSizeType.SCREEN_16_X_9);
//デフォルトのスライドを削除する
presentation.getSlides().removeAt(0);
//フォルダーから画像ファイルを取得する
File directoryPath = new File("C:\\Users\\Administrator\\Desktop\\Images");
File[] picFiles = directoryPath.listFiles();
//画像をループする
for (int i = 0; i < picFiles.length; i++)
{
//スライドを追加する
ISlide slide = presentation.getSlides().append();
//特定の画像を取得する
String imageFile = picFiles[i].getAbsolutePath();
//画像コレクションに追加する
BufferedImage bufferedImage = ImageIO.read(new FileInputStream(imageFile));
IImageData imageData = presentation.getImages().append(bufferedImage);
//スライドと同じサイズの図形を追加する
IAutoShape shape = slide.getShapes().appendShape(ShapeType.RECTANGLE, new Rectangle2D.Float(0, 0, (float) presentation.getSlideSize().getSize().getWidth(), (float)presentation.getSlideSize().getSize().getHeight()));
//図形を画像で塗りつぶす
shape.getLine().setFillType(FillFormatType.NONE);
shape.getFill().setFillType(FillFormatType.PICTURE);
shape.getFill().getPictureFill().setFillType(PictureFillType.STRETCH);
shape.getFill().getPictureFill().getPicture().setEmbedImage(imageData);
}
//結果文書を保存する
presentation.saveToFile("ImagesToShape.pptx", FileFormat.PPTX_2013);
}
}
もし画像のアスペクト比が 16:9 ではない場合や、標準のスライドサイズでない場合は、画像の実際のサイズに基づいてスライドを作成することができます。これにより、画像が過度に伸びたり圧縮されたりするのを防ぐことができます。以下は、Spire.Presentation for Java を使用してカスタマイズされたスライドサイズで PowerPoint 文書に画像を変換する手順です。
import com.spire.pdf.graphics.PdfGraphicsUnit;
import com.spire.pdf.graphics.PdfUnitConvertor;
import com.spire.presentation.*;
import com.spire.presentation.drawing.*;
import javax.imageio.ImageIO;
import java.awt.*;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.FileInputStream;
public class CustomizeSlideSize {
public static void main(String[] args) throws Exception {
//Presentationオブジェクトを作成する
Presentation presentation = new Presentation();
//デフォルトのスライドを削除する
presentation.getSlides().removeAt(0);
//フォルダーから画像ファイルを取得する
File directoryPath = new File("C:\\Users\\Administrator\\Desktop\\Images");
File[] picFiles = directoryPath.listFiles();
//PdfUnitConvertor オブジェクトを作成する
PdfUnitConvertor convertor = new PdfUnitConvertor();
//画像をループする
for (int i = 0; i < picFiles.length; i++)
{
//特定の画像を取得する
String imageFile = picFiles[i].getAbsolutePath();
//画像コレクションに追加する
BufferedImage bufferedImage = ImageIO.read(new FileInputStream(imageFile));
IImageData imageData = presentation.getImages().append(bufferedImage);
//画像の高さと幅をピクセル単位で取得する
int height = imageData.getHeight();
int width = imageData.getWidth();
//ピクセルをポイントに変換する
float widthPoint = convertor.convertUnits(width, PdfGraphicsUnit.Pixel, PdfGraphicsUnit.Point);
float heightPoint= convertor.convertUnits(height, PdfGraphicsUnit.Pixel, PdfGraphicsUnit.Point);
//スライドのサイズを設定する
presentation.getSlideSize().setSize(new Dimension((int)widthPoint, (int)heightPoint));
//スライドを追加する
ISlide slide = presentation.getSlides().append();
//画像をスライドの背景画像として設定する
slide.getSlideBackground().setType(BackgroundType.CUSTOM);
slide.getSlideBackground().getFill().setFillType(FillFormatType.PICTURE);
slide.getSlideBackground().getFill().getPictureFill().setFillType(PictureFillType.STRETCH);
slide.getSlideBackground().getFill().getPictureFill().getPicture().setEmbedImage(imageData);
}
//結果文書を保存する
presentation.saveToFile("CustomizeSlideSize.pptx", FileFormat.PPTX_2013);
}
}
結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。
Spire.Doc for Java 11.10.3のリリースを発表できることを嬉しく思います。このバージョンでは、AppendHorizonalLine() メソッドをJavaに同期させました。非フローレイアウトのドキュメントに変換する際に、文字の描画がサポートされていないフォントを FontFallbackRule メソッドの XML で切り替えることもサポートしています。さらに、WordからPDF、HTML、OFDへの変換機能も強化されました。また、画像のズームサイズの設定結果が正しくないという問題など、いくつかの既知の問題も修正されました。詳細は以下の内容を読んでください。
カテゴリー | ID | 説明 |
New feature | SPIREDOC-9912 | AppendHorizonalLine() メソッドをJavaに同期させました。
paragraph.appendHorizonalLine() |
New feature | - | 非フローレイアウトのドキュメントに変換する際に、文字の描画がサポートされていないフォントを FontFallbackRule メソッドの XML で切り替えることもサポートしています。
Document doc = new Document(); doc.loadFromFile(inputFile); doc.saveFontFallbackRuleSettings(outputFile_xml); doc.loadFontFallbackRuleSettings(outputFile_xml); doc.saveToFile(outputFile, FileFormat.PDF); 説明: XMLがない場合は、 saveFontFallbackRuleSettings を使用してXMLを保存します。その後、XML内のフォント置換ルールを手動で編集してください。 現在、ルールには 3つのプロパティが含まれています。 Ranges- 対応する文字に対応する Unicode 範囲。 FallbackFonts - 対応する文字を置換する必要があるフォントの名前。 BaseFonts - ドキュメント内の文字に対応するフォント名。 XMLを編集する際には、ルールが上から下に向かって文字に一致するかどうかを検索することに注意してください。 XMLの編集が完了したら、loadFontFallbackRuleSettings メソッドを使用してルールを読み込んでください。 |
Bug | SPIREDOC-9711 | WPS レイアウトを使用して Word を PDF に変換するときに、アプリケーションが「OutOfMemoryError」をスローする問題が修正されました。 |
Bug | SPIREDOC-9781 | 「Regular_GB2312」フォントの埋め込みが失敗する問題が修正されました。 |
Bug | SPIREDOC-9842 | RTFをPDFに変換した後に、中国語の文字が文字化けする問題が修正されました。 |
Bug | SPIREDOC-9854 | Wordドキュメントを保存した後に、編集可能な領域が変更される問題が修正されました。 |
Bug | SPIREDOC-9860 | Wordドキュメントを修正した後に、編集可能な領域が変更される問題が修正されました。 |
Bug | SPIREDOC-9862 | 画像のズームサイズの設定結果が正しくない問題が修正されました。 |
Bug | SPIREDOC-9871 | WordをHTMLに変換した後に、テーブルのスタイルが正しくない問題が修正されました。 |
Bug | SPIREDOC-9880 | HTMLをWordに変換した後に、フォントサイズが正しくない問題が修正されました。 |
Bug | SPIREDOC-9891 | executeWidthNestedRegion() メソッドを使用してメールマージを行った後、各値が2回表示される問題が修正されました。 |
Bug | SPIREDOC-9892 | WordをOFDに変換した後に、ファイルのサイズが大幅に増加する問題が修正されました。 |
他人と Excel ファイルを共有したいが、基礎の数式にアクセス権を与えたくない場合、数式を数値に変換することは良い選択です。これにより、受信者は元の式を変更せずに計算結果を表示または使用することができます。この記事では、Spire.XLS for .NET を使用して Excel で数式を削除し、値を保持する方法について説明します。
まず、Spire.XLS for .NET パッケージに含まれている DLL ファイルを .NET プロジェクトの参照として追加する必要があります。DLL ファイルは、このリンクからダウンロードするか、NuGet を介してインストールできます。
PM> Install-Package Spire.XLS
MS Excel には、数式を削除しながら値を保持するための「値の貼り付け」機能があります。同じ機能を C# のコードで実装するには、以下の手順を参照してください。
using Spire.Xls;
using System;
namespace RemoveFormulas
{
class Program
{
static void Main(string[] args)
{
//Workbookのインスタンスを作成する
Workbook workbook = new Workbook();
//サンプルのExcelファイルを読みむ
workbook.LoadFromFile("Sample.xlsx");
//ファイル内のワークシートをループする
foreach (Worksheet sheet in workbook.Worksheets)
{
//各シート内のセルをループする
foreach (CellRange cell in sheet.Range)
{
//セルに数式が含まれているかどうかを判断する
if (cell.HasFormula)
{
//もし含まれている場合は、数式の値を取得する
Object value = cell.FormulaValue;
//セル内の元の数式をクリアする
cell.Clear(ExcelClearOptions.ClearContent);
//セルに数式の値を入力する
cell.Value2 = value;
}
}
}
//結果のファイルを保存する
workbook.SaveToFile("DeleteFormula.xlsx", ExcelVersion.Version2016);
}
}
}
結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。
Spire.Doc 11.10.7のリリースをお知らせいたします。このバージョンでは、WordをPDFに変換する際にタイ語の文字が整列や改行されない問題が修正されました。詳細は以下の内容を読んでください。
カテゴリー | ID | 説明 |
Bug | SPIREDOC-9831 | そのバージョンでは、WordをPDFに変換する際にタイ語の文字が整列や改行されない問題が修正されました。 |
Spire.PDF for Java 9.10.3のリリースを発表できることをうれしく思います。このバージョンでは、AES暗号化アルゴリズムの設定と既存のフィールド名のリセットがサポートされています。さらに、PDFからSVG/PPTX/PDFA2Bへの変換機能やOFDからPDFへの変換機能も強化されました。また、PDFドキュメントを読み込む際に「NullPointerException」エラーが発生するなど、既知問題も修正されました。詳細は以下の内容を読んでください。
カテゴリー | ID | 説明 |
New feature | - | .NET の新しい暗号化インターフェイスを JAVA に同期し、AES 暗号化アルゴリズムの設定をサポートします。
PdfEncryptionAlgorithm.AES //パスワードセキュリティポリシーを作成する PdfSecurityPolicy securityPolicy = new PdfPasswordSecurityPolicy("", "123456"); //暗号化アルゴリズムを設定する securityPolicy.setEncryptionAlgorithm( PdfEncryptionAlgorithm.AES_256); //文書のアクセス許可 (所有権) を設定する。デフォルトは ForbidAll です securityPolicy.setDocumentPrivilege(PdfDocumentPrivilege.getForbidAll()); securityPolicy.getDocumentPrivilege().setAllowDegradedPrinting(true); securityPolicy.getDocumentPrivilege().setAllowModifyAnnotations(true); securityPolicy.getDocumentPrivilege().setAllowAssembly(true); securityPolicy.getDocumentPrivilege().setAllowModifyContents(true); securityPolicy.getDocumentPrivilege().setAllowFillFormFields(true); securityPolicy.getDocumentPrivilege().setAllowPrint(true); pdf.encrypt(securityPolicy); PdfDocument pdf = new PdfDocument(); //パスワードを渡して、PDF ドキュメントを開きます pdf.loadFromFile(inputFile, "1234"); //復号化 pdf.decrypt(); pdf.saveToFile(outputFile, FileFormat.PDF); pdf.dispose(); |
New feature | SPIREPDF-6306 | 既存のフィールド名のリセットがサポートされています。
PdfDocument document=new PdfDocument(); document.loadFromFile("input.pdf"); PdfFormWidget formWidget = (PdfFormWidget)document.getForm(); for (int i = 0; i < formWidget.getFieldsWidget().getCount(); i++) { PdfField field = (PdfField)formWidget.getFieldsWidget().get(i); for (PdfFieldWidget widget : (Iterable extends PdfFieldWidget>) formWidget.getFieldsWidget()) { if (widget.getName() == "oldName") { widget.setName("NewName"); } } } document.saveToFile("result.pdf",FileFormat.PDF); |
Bug | SPIREPDF-6253 SPIREPDF-6313 |
PDFをSVGに変換した後、背景が正しくない問題が修正されました。 |
Bug | SPIREPDF-6275 | PDFをPPTXに変換した後、図形の色が正しくなく、内容が欠落する問題が修正されました。 |
Bug | SPIREPDF-6277 | PDFをPPTXに変換した後、画像が隠れる問題が修正されました。 |
Bug | SPIREPDF-6300 | PDFをPDFA2Bに変換した後、標準の検証に失敗する問題が修正されました。 |
Bug | SPIREPDF-6307 | OFDをPDFに変換した後、スタンプが失われる問題が修正されました。 |
Bug | SPIREPDF-6324 | PDFを読み込む際に「NullPointerException」というエラーが発生する問題が修正されました。 |
Spire.Presentation 8.10.2のリリースをお知らせいたします。このバージョンでは、形状内のテキストの位置情報を取得する機能が追加されました。また、形状中のテキストの "Ascent" および "Descent" 属性を取得し、形状をSVG形式に変換する機能もサポートされています。さらに、PPTをSVGに変換した後、ブラウザでSVGファイルを開いたときに空白になっていた問題も修正されました。詳細は以下の内容を読んでください。
カテゴリー | ID | 説明 |
New feature | SPIREPPT-2324 | 形状内のテキストの位置情報を取得する機能がサポートされています。
Presentation ppt = new Presentation(); ppt.LoadFromFile(inputFile); StringBuilder sb = new StringBuilder(); ISlide slide = ppt.Slides[0]; for (int i = 0; i < slide.Shapes.Count; i++) { IShape shape = slide.Shapes[i]; if (shape is IAutoShape) { IAutoShape autoshape = slide.Shapes[i] as IAutoShape; string text = autoshape.TextFrame.Text; //obtain the text position information PointF point = autoshape.TextFrame.GetTextLocation(); sb.AppendLine("Shape " + i + ":" + text + "\r\n" + "location:" + point.ToString()); } } File.AppendAllText(outputFile, sb.ToString()); ppt.Dispose(); |
New feature | SPIREPPT-2350 | 形状中のテキストの "Ascent" および "Descent" 属性を取得する機能がサポートされています。
Presentation ppt = new Presentation(); ppt.LoadFromFile(inputFile); ISlide slide = ppt.Slides[0]; IAutoShape autoshape = slide.Shapes[0] as IAutoShape; IList |
New feature | SPIREPPT-2365 | 形状からSVGへの変換がサポートされています。
Presentation ppt = new Presentation(); ppt.LoadFromFile("FreeForm.pptx"); ISlide slide = ppt.Slides[0]; int num = 0; foreach (IShape shape in slide.Shapes) { byte[] svgByte = shape.SaveAsSvg(); FileStream fs = new FileStream("shape_" + num + ".svg",FileMode.Create); fs.Write(svgByte, 0, svgByte.Length); fs.Close(); num++; } |
Bug | SPIREPPT-2350 | PPTをSVGに変換した後、ブラウザでSVGファイルを開いたときに空白になっていた問題が修正されました。 |
Microsoft PowerPoint の置換機能を使用すると、特定のテキストを検索し、一度に新しいテキストに変更することができます。これは、大きな PowerPoint ドキュメント内の複数の場所で同じエラーを修正する必要がある場合に非常に便利です。この記事では、Spire.Presentation for .NET を使用して PowerPoint でテキストを置換する方法を示します。
まず、Spire.Presentation for .NET パッケージに含まれている DLL ファイルを .NET プロジェクトの参照として追加する必要があります。DLL ファイルは、このリンクからダウンロードするか、NuGet を介してインストールできます。
PM> Install-Package Spire.Presentation
PowerPoint 内の特定のテキストの最初の出現箇所を置換するには、すべてのスライドをループし、ISlide.ReplaceFirstText() メソッドを呼び出します。詳細な手順は次のとおりです。
using Spire.Presentation;
namespace ReplaceFirstTextOccurrenceInPPT
{
class Program
{
static void Main(string[] args)
{
//Presentationインスタンスを作成する
Presentation ppt = new Presentation();
//PowerPointドキュメントをロードする
ppt.LoadFromFile("Sample1.pptx");
//すべてのスライドをループする
foreach (ISlide slide in ppt.Slides)
{
//最初に出現する「Spire.Presentation for .NET」を「E-iceblue製品」に置き換える
slide.ReplaceFirstText("Spire.Presentation for .NET", "E-iceblue製品", false);
break;
}
//結果文書を保存する
ppt.SaveToFile("ReplaceFirstTextOccurrence.pptx", FileFormat.Pptx2013);
}
}
}
Imports Spire.Presentation
Namespace ReplaceFirstTextOccurrenceInPPT
Friend Class Program
Private Shared Sub Main(ByVal args As String())
'Presentationインスタンスを作成する
Dim ppt As Presentation = New Presentation()
'PowerPointドキュメントをロードする
ppt.LoadFromFile("Sample1.pptx")
'すべてのスライドをループする
For Each slide As ISlide In ppt.Slides
'最初に出現する「Spire.Presentation for .NET」を「E-iceblue製品」に置き換える
slide.ReplaceFirstText("Spire.Presentation for .NET", "E-iceblue製品", False)
Exit For
Next
'結果文書を保存する
ppt.SaveToFile("ReplaceFirstTextOccurrence.pptx", FileFormat.Pptx2013)
End Sub
End Class
End Namespace
PowerPoint 内の特定のテキストのすべての出現箇所を置換するには、すべてのスライドをループし、ISlide.ReplaceAllText() メソッドを使用します。詳細な手順は次のとおりです。
using Spire.Presentation;
namespace ReplaceAllTextOccurrencesInPPT
{
class Program
{
static void Main(string[] args)
{
//Presentationインスタンスを作成する
Presentation ppt = new Presentation();
//PowerPointドキュメントをロードする
ppt.LoadFromFile("Sample1.pptx");
//すべてのスライドをループする
foreach (ISlide slide in ppt.Slides)
{
//すべての「Spire.Presentation for.NET」を「E-icelue製品」に置き換える
slide.ReplaceAllText("Spire.Presentation for .NET", "E-iceblue製品", false);
}
//結果文書を保存する
ppt.SaveToFile("ReplaceAllTextOccurrences.pptx", FileFormat.Pptx2013);
}
}
}
Imports Spire.Presentation
Namespace ReplaceAllTextOccurrencesInPPT
Friend Class Program
Private Shared Sub Main(ByVal args As String())
'Presentationインスタンスを作成する
Dim ppt As Presentation = New Presentation()
'PowerPointドキュメントをロードする
ppt.LoadFromFile("Sample1.pptx")
'すべてのスライドをループする
For Each slide As ISlide In ppt.Slides
'すべての「Spire.Presentation for.NET」を「E-icelue製品」に置き換える
slide.ReplaceAllText("Spire.Presentation for .NET", "E-iceblue製品", False)
Next
'結果文書を保存する
ppt.SaveToFile("ReplaceAllTextOccurrences.pptx", FileFormat.Pptx2013)
End Sub
End Class
End Namespace
Spire.Presentation for .NET では、正規表現パターンに一致するテキストを置換するための IShape.ReplaceTextWithRegex() メソッドが提供されています。詳細な手順は次のとおりです。
using Spire.Presentation;
using System.Text.RegularExpressions;
namespace ReplaceTextUsingRegexInPPT
{
class Program
{
static void Main(string[] args)
{
//Presentationインスタンスを作成する
Presentation ppt = new Presentation();
//PowerPointドキュメントをロードする
ppt.LoadFromFile("Sample2.pptx");
//すべてのスライドをループする
foreach (ISlide slide in ppt.Slides)
{
//各スライドのすべての図形をループする
foreach (IShape shape in slide.Shapes)
{
//スライド上の # で始まるテキストを「Spire.Presentation for .NET」に置き換えます。
shape.ReplaceTextWithRegex(new Regex(@"\#\w+\b"), " Spire.Presentation for .NET ");
}
}
//結果文書を保存する
ppt.SaveToFile("ReplaceTextUsingRegex.pptx", FileFormat.Pptx2013);
}
}
}
Imports Spire.Presentation
Imports System.Text.RegularExpressions
Namespace ReplaceTextUsingRegexInPPT
Friend Class Program
Private Shared Sub Main(ByVal args As String())
'Presentationインスタンスを作成する
Dim ppt As Presentation = New Presentation()
'PowerPointドキュメントをロードする
ppt.LoadFromFile("Sample2.pptx")
'すべてのスライドをループする
For Each slide As ISlide In ppt.Slides
'各スライドのすべての図形をループする
For Each shape As IShape In slide.Shapes
'スライド上の # で始まるテキストを「Spire.Presentation for .NET」に置き換える
shape.ReplaceTextWithRegex(New Regex("\#\w+\b"), " Spire.Presentation for .NET ")
Next
Next
'結果文書を保存する
ppt.SaveToFile("ReplaceTextUsingRegex.pptx", FileFormat.Pptx2013)
End Sub
End Class
End Namespace
結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。
Spire.XLS 13.10.1のリリースをお知らせできることをうれしく思います。このバージョンでは、ExcelからPDFへの変換効率が向上されました。ピボットテーブルのフィールド名をカスタマイズする機能もサポートされています。さらに、ExcelからHTMLへの変換機能も強化されました。また、文書から削除されたコメントが削除されないなど、既知の問題も修正されました。詳細は以下の内容を読んでください。
カテゴリー | ID | 説明 |
New feature | SPIREXLS-4907 | ExcelからPDFへの変換効率が向上されました。 |
New feature | SPIREXLS-4857 | ピボットテーブルのフィールド名をカスタマイズする機能がサポートされています。
sheet.PivotTables[0].RowFields[0].CustomName = "rowName"; sheet.PivotTables[0].ColumnFields[0].CustomName = "colName"; sheet.PivotTables[0].PivotFields[0].CustomName = "fieldName1"; sheet.PivotTables[0].DataFields[0].CustomName = "dataName"; |
Bug | SPIREXLS-4883 | Excel を HTML に変換した後に画像の位置が変わる問題が修正されました。 |
Bug | SPIREXLS-4897 | 削除されたコメントがドキュメントから正常に削除されない問題が修正されました。 |
Bug | SPIREXLS-4909 | Excel文書の読み込み時に、プログラムが「System.OverflowException」をスローする問題が修正されました。 |
PowerPoint プレゼンテーションを作成または編集する際、時折、特定の重要な内容を強調して観客の注意を引きたいと思うことがあります。そのためには、特定のテキストを目立つ色で強調表示するという方法が効果的です。この記事では、Spire.Presentation for .NET を使用して PowerPoint プレゼンテーションでテキストをハイライトする方法を示します。
まず、Spire.Presentation for .NET パッケージに含まれている DLL ファイルを .NET プロジェクトの参照として追加する必要があります。DLL ファイルは、このリンクからダウンロードするか、NuGet を介してインストールできます。
PM> Install-Package Spire.Presentation
Spire.Presentation for .NET が提供する IAutoShape.TextFrame.HighLightText() メソッドは、PowerPoint で指定されたテキストのハイライトをサポートします。以下に詳細な操作手順を示します。
using Spire.Presentation;
using System.Drawing;
namespace HighlightTextInPPT
{
class Program
{
static void Main(string[] args)
{
//Presentationクラスのインスタンスを作成する
Presentation presentation = new Presentation();
//PowerPointプレゼンテーションをロードする
presentation.LoadFromFile(@"Sample.pptx");
//すべてのスライドをループする
for (int i = 0; i < presentation.Slides.Count; i++)
{
//現在のスライドを取得する
ISlide slide = presentation.Slides[i];
//スライドの形状をループする
for (int j = 0; j < slide.Shapes.Count; j++)
{
//現在の形状が IAutoShape タイプであるかどうかを確認する
if (slide.Shapes[j] is IAutoShape)
{
//形状をIAutoShapeに型キャストする
IAutoShape shape = slide.Shapes[j] as IAutoShape;
//TextHighLightingOptionsクラスのインスタンスを作成する
TextHighLightingOptions options = new TextHighLightingOptions();
//テキストのハイライトオプションを設定する
options.CaseSensitive = true;
options.WholeWordsOnly = true;
//形状内の特定のテキストをハイライトする
shape.TextFrame.HighLightText("Spire.Presentation for .NET", Color.LightYellow, options);
}
}
}
//結果ファイルを保存する
presentation.SaveToFile("HighlightText.pptx", FileFormat.Pptx2013);
}
}
}
Imports Spire.Presentation
Imports System.Drawing
Namespace HighlightTextInPPT
Friend Class Program
Private Shared Sub Main(ByVal args As String())
'Presentationクラスのインスタンスを作成する
Dim presentation As Presentation = New Presentation()
'PowerPointプレゼンテーションをロードする
presentation.LoadFromFile("Sample.pptx")
'すべてのスライドをループする
For i As Integer = 0 To presentation.Slides.Count – 1
'現在のスライドを取得する
Dim slide As ISlide = presentation.Slides(i)
'スライドの形状をループする
For j As Integer = 0 To slide.Shapes.Count – 1
'現在の形状が IAutoShape タイプであるかどうかを確認する
If TypeOf slide.Shapes(j) Is IAutoShape Then
'形状をIAutoShapeに型キャストする
Dim shape As IAutoShape = TryCast(slide.Shapes(j), IAutoShape)
'TextHighLightingOptionsクラスのインスタンスを作成する
Dim options As TextHighLightingOptions = New TextHighLightingOptions()
'テキストのハイライトオプションを設定する
options.CaseSensitive = True
options.WholeWordsOnly = True
'形状内の特定のテキストをハイライトする
shape.TextFrame.HighLightText("Spire.Presentation for .NET", Color.LightYellow, options)
End If
Next
Next
'結果ファイルを保存する
presentation.SaveToFile("HighlightText.pptx", FileFormat.Pptx2013)
End Sub
End Class
End Namespace
結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。
Spire.Doc 11.10.3のリリースを発表できることを嬉しく思います。このバージョンでは、WordをPDFに変換する際のテキストの書式設定機能が追加され、.NET 4.6.2以上、.NET Core、および.NET Standardプラットフォームに対応しています。詳細は以下の内容を読んでください。
カテゴリー | ID | 説明 |
New feature | - | WordをPDFに変換する際のテキストの書式設定機能が追加されました(主にタイ文字とチベット文字の処理に対応)。また、.NET 4.6.2以上、.NET Core、および.NET Standardプラットフォームに対応しています。
Document doc = new Document(); doc.LoadFromFile(fileName); doc.LayoutOptions.UseHarfBuzzTextShaper = true; doc.SaveToFile(pdfFileName, Spire.Doc.FileFormat.PDF) |