小编Igo*_*syn的帖子

pdfbox换行文字

我正在使用PDFBox,以下代码:

doc = new PDDocument();
page = new PDPage();

doc.addPage(page);
PDFont font = PDType1Font.COURIER;

pdftitle = new PDPageContentStream(doc, page);
pdftitle.beginText();
pdftitle.setFont( font, 12 );
pdftitle.moveTextPositionByAmount( 40, 740 );
pdftitle.drawString("Here I insert a lot of text");
pdftitle.endText();
pdftitle.close();
Run Code Online (Sandbox Code Playgroud)

有谁知道如何包装文本,以便它自动转到另一行?非常感谢!

java text pdfbox

14
推荐指数
2
解决办法
2万
查看次数

无法弄清楚如何使用PDFBox

我正在尝试创建一个PDF文件,其中包含文档中的大量文本框和来自其他类的文本框.我正在使用PDFBox.

好的,创建一个新文件很简单,编写一行文本很容易.现在,当我尝试插入下一个文本行或文本字段时,它会覆盖内容.

    PDDocument doc = null;
    PDPage page = null;

       try{
           doc = new PDDocument();
           page = new PDPage();

           doc.addPage(page);
           PDFont font = PDType1Font.HELVETICA_BOLD;

           PDPageContentStream title = new PDPageContentStream(doc, page);
           title.beginText();
           title.setFont( font, 14 );
           title.moveTextPositionByAmount( 230, 720 );
           title.drawString("DISPATCH SUMMARY");
           title.endText();
           title.close();

           PDPageContentStream title1 = new PDPageContentStream(doc, page);
           title1.beginText();
           title1.setFont( font, 11 );
           title1.moveTextPositionByAmount( 30, 620 );
           title1.drawString("DEPARTURE");
           title1.endText();
           title1.close();


           doc.save("PDFWithText.pdf");
           doc.close();
    } catch (Exception e){
        System.out.println(e);
    }
Run Code Online (Sandbox Code Playgroud)

它确实给了我一个错误:"你正在覆盖现有内容,你应该使用追加模式".

所以我在尝试title1.appendRawCommands(String),但它没有用.

如何添加新文本框和文本字段(来自其他类)?我已经在互联网上阅读了几十个教程,但他们只展示创建一行.

java pdfbox

9
推荐指数
1
解决办法
7081
查看次数

从Swift中的大文本文件中读取行直到新行为空:Swift方式

我有以下文本文件结构(文本文件很大,大约100,000行):

A|a1|111|111|111
B|111|111|111|111

A|a2|222|222|222
B|222|222|222|222
B|222|222|222|222

A|a3|333|333|333
B|333|333|333|333

...
Run Code Online (Sandbox Code Playgroud)

我需要提取一段与给定键相关的文本.例如,如果我的密钥是A | a2,我需要将以下内容保存为字符串:

A|a2|222|222|222
B|222|222|222|222
B|222|222|222|222
Run Code Online (Sandbox Code Playgroud)

对于我的C++和Objective C项目,我使用了C++ getline函数,如下所示:

std::ifstream ifs(dataPathStr.c_str());

NSString* searchKey = @"A|a2";
std::string search_string ([searchKey cStringUsingEncoding:NSUTF8StringEncoding]);

// read and discard lines from the stream till we get to a line starting with the search_string
std::string line;

while( getline( ifs, line ) && line.find(search_string) != 0 );

// check if we have found such a line, if not report an error
if( line.find(search_string) != 0 )
{
 data = …
Run Code Online (Sandbox Code Playgroud)

readline getline swift

7
推荐指数
1
解决办法
8936
查看次数

Swift:数组的排序没有正确完成

我用它来在Swift中对数组中的组件进行排序:

myArray = myArray.sorted { $0.localizedCaseInsensitiveCompare($1) == NSComparisonResult.OrderedAscending }
Run Code Online (Sandbox Code Playgroud)

但是,它给了我以下结果:

[18C, 18L, 18R, 22, 24, 27, 36C, 36L, 36R, 4, 6, 9]
Run Code Online (Sandbox Code Playgroud)

是否有可能以正确的方式对其进行排序,即

[4, 6, 9, 18C, 18L, 18R, 22, 24, 27, 36C, 36L, 36R]
Run Code Online (Sandbox Code Playgroud)

arrays sorting swift

3
推荐指数
1
解决办法
651
查看次数

C++; 循环随机化数组键不起作用

我遇到了一个我最初认为很容易解决的问题!

我有一个包含4个值的枚举(空,男,女,小).我有一个对应50个座位的阵列.所以,我想根据随机生成的座位号码将男人,女人和孩子放在空座位上.如果座位不为空,则程序应继续搜索其他空座位.

这就是我所拥有的:

 #include <cstdlib>
 #include <ctime>
 #include <iostream>
 #include <string>

 using namespace std;

    enum pax {E, M, F, C};
    pax seats[50] = {E, E, E, E, E, E, E, E, E, E, E, E, E, E, E, E, E, E, E, E, E, E, E, E, E,
                    E, E, E, E, E, E, E, E, E, E, E, E, E, E, E, E, E, E, E, E, E, E, E, E, E};

    int paxNumMaleTotal;    // Total number of Male …
Run Code Online (Sandbox Code Playgroud)

c++ arrays random loops

2
推荐指数
1
解决办法
180
查看次数

爪哇。从不适合字节边界的字节数组中的位中提取整数

我有以下字节数组:01010110 01110100 00100101 01001011

这些字节分为两组以编码七个整数。我知道第一组由 3 个值组成,每个值 4 位(0101 0110 0111),代表数字 5、6、7。第二组由 4 个值组成,每个值 5 位 (01000 01001 01010 01011),代表整数 8、9、10 和 11。

为了提取整数,我目前使用以下方法。将数组转换为二进制字符串:

public static String byteArrayToBinaryString(byte[] byteArray)
    {
    String[] arrayOfStrings = new String[byteArray.length];

    for(int i=0; i<byteArray.length; i++)
    {
        arrayOfStrings[i] = byteToBinaryString(byteArray[i]);
    }

    String bitsetString = "";
    for(String testArrayStringElement : arrayOfStrings)
    {
        bitsetString += testArrayStringElement;
    }

    return bitsetString;
}

// Taken from here: http://helpdesk.objects.com.au/java/converting-large-byte-array-to-binary-string
public static String byteToBinaryString(byte byteIn) 
{
    StringBuilder sb = new StringBuilder("00000000");

    for (int bit = …
Run Code Online (Sandbox Code Playgroud)

java bitwise-operators

2
推荐指数
1
解决办法
1314
查看次数

标签 统计

java ×3

arrays ×2

pdfbox ×2

swift ×2

bitwise-operators ×1

c++ ×1

getline ×1

loops ×1

random ×1

readline ×1

sorting ×1

text ×1