该文将介绍如何使用Spire.PDF for Java 在PDF文档中绘制上标文本和下标文本。
绘制PDF上标文本
import com.spire.pdf.*;
import com.spire.pdf.graphics.*;
import java.awt.*;
import java.awt.geom.*;
public class PdfSuperscriptText {
    public static void main(String[] args) {
        //创建PdfDocument实例
        PdfDocument doc = new PdfDocument();
        //添加一个页面
        PdfPageBase page = doc.getPages().add();
        //设置字体
        PdfTrueTypeFont font = new PdfTrueTypeFont(new Font("宋体", Font.PLAIN,14),true);
        PdfSolidBrush brush = new PdfSolidBrush(new PdfRGBColor(Color.black));
        //设置x,y坐标初始值
        float x = 120f;
        float y = 100f;
        String text = "示例文本";
        page.getCanvas().drawString(text, font, brush, new Point2D.Float(x, y));
        //计算文本的尺寸
        Dimension2D size = font.measureString(text);
        //设置上标的X坐标
        x += size.getWidth();
        //设置格式为上标
        PdfStringFormat format = new PdfStringFormat();
        format.setSubSuperScript(PdfSubSuperScript.Super_Script);
        //绘制上标
        text = "上标";
        page.getCanvas().drawString(text, font, brush, new Point2D.Float(x, y), format);
        //保存文档
        String result="output/superScript.pdf";
        doc.saveToFile(result);
    }
}效果图:

绘制PDF下标文本
import com.spire.pdf.*;
import com.spire.pdf.graphics.*;
import java.awt.*;
import java.awt.geom.*;
public class PdfSubscriptText {
    public static void main(String[] args) {
        //创建PdfDocument实例
        PdfDocument doc = new PdfDocument();
        //添加一个页面
        PdfPageBase page = doc.getPages().add();
        //设置字体
        PdfTrueTypeFont font = new PdfTrueTypeFont(new Font("宋体", Font.PLAIN,14),true);
        PdfSolidBrush brush = new PdfSolidBrush(new PdfRGBColor(Color.black));
        //设置x,y坐标初始值
        float x = 120f;
        float y = 100f;
        String text = "示例文本";
        page.getCanvas().drawString(text, font, brush, new Point2D.Float(x, y));
        //计算文本的尺寸
        Dimension2D size = font.measureString(text);
        //设置下标的X坐标
        x += size.getWidth();
        //设置格式为下标
        PdfStringFormat format = new PdfStringFormat();
        format.setSubSuperScript(PdfSubSuperScript.Sub_Script);
        //绘制下标
        text = "下标";
        page.getCanvas().drawString(text, font, brush, new Point2D.Float(x, y), format);
        //保存文档
        String result="output/subScript.pdf";
        doc.saveToFile(result);
    }
}效果图:

 



 
					



