本文整理汇总了C++中KWDocument::appendPage方法的典型用法代码示例。如果您正苦于以下问题:C++ KWDocument::appendPage方法的具体用法?C++ KWDocument::appendPage怎么用?C++ KWDocument::appendPage使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类KWDocument
的用法示例。
在下文中一共展示了KWDocument::appendPage方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: testClipToPage
void TestClipToPage::testClipToPage()
{
KWDocument doc;
KWPage page1 = doc.appendPage("Standard");
KOdfPageLayoutData layout = page1.pageStyle().pageLayout();
layout.width = 300;
layout.height = 410;
page1.pageStyle().setPageLayout(layout);
KWCanvas canvas("bla", &doc, 0, 0);
MockShape shape;
shape.setPosition(QPointF(50, 50));
shape.setSize(QSizeF(100, 100));
QPointF distance(0, 0);
canvas.clipToDocument(&shape, distance);
QCOMPARE(distance, QPointF(0, 0));
distance = QPointF(-200, -500);
canvas.clipToDocument(&shape, distance);
QCOMPARE(distance, QPointF(-145, -145));
distance = QPointF(1000, 2000);
canvas.clipToDocument(&shape, distance);
QCOMPARE(distance, QPointF(245, 355));
distance = QPointF(50, 50);
canvas.clipToDocument(&shape, distance);
QCOMPARE(distance, QPointF(50, 50));
// test when we start outside the page
shape.setPosition(QPointF(-200, -100));
distance = QPointF(0, 0);
canvas.clipToDocument(&shape, distance);
QCOMPARE(distance, QPointF(105, 5));
distance = QPointF(120, 120);
canvas.clipToDocument(&shape, distance);
QCOMPARE(distance, QPointF(120, 120));
shape.setPosition(QPointF(400, 200));
distance = QPointF(0, 0);
canvas.clipToDocument(&shape, distance);
QCOMPARE(distance, QPointF(-105, 0));
distance = QPointF(-110, -50);
canvas.clipToDocument(&shape, distance);
QCOMPARE(distance, QPointF(-110, -50));
}
示例2: documentPages
void TestPageCommands::documentPages()
{
KWDocument document;
QCOMPARE(document.pageCount(), 0);
KWPage page1 = document.appendPage("pagestyle1");
QVERIFY(page1.isValid());
QCOMPARE(page1.pageStyle().name(), QString("Standard")); // doesn't auto-create styles
QCOMPARE(page1.pageNumber(), 1);
KWPage page2 = document.appendPage("pagestyle1");
QVERIFY(page2.isValid());
QCOMPARE(page2.pageStyle().name(), QString("Standard"));
QCOMPARE(page2.pageNumber(), 2);
KWPage page3 = document.appendPage("pagestyle2");
QCOMPARE(page3.pageStyle().name(), QString("Standard"));
QCOMPARE(page3.pageNumber(), 3);
KWPage page4 = document.appendPage("pagestyle2");
QCOMPARE(page4.pageStyle().name(), QString("Standard"));
QCOMPARE(page4.pageNumber(), 4);
KWPage page5 = document.insertPage(-99);
QVERIFY(page5.isValid());
QCOMPARE(page5.pageNumber(), 5);
KWPage page6 = document.insertPage(99);
QVERIFY(page6.isValid());
QCOMPARE(page6.pageNumber(), 6);
KWPage page7 = document.appendPage("pagestyle2");
QVERIFY(page7.isValid());
QCOMPARE(page7.pageNumber(), 7);
KWPage page8 = document.appendPage("pagestyle1");
QVERIFY(page8.isValid());
QCOMPARE(page8.pageNumber(), 8);
KWPage page9 = document.appendPage();
QCOMPARE(page9.pageNumber(), 9);
QCOMPARE(document.pageCount(), 9);
document.removePage(3);
QCOMPARE(document.pageCount(), 8);
QVERIFY(! page3.isValid());
QCOMPARE(document.pageManager()->page(2), page2);
QCOMPARE(document.pageManager()->page(5), page6);
document.removePage(3);
QVERIFY(! page3.isValid());
QVERIFY(! page4.isValid());
QCOMPARE(document.pageCount(), 7);
QCOMPARE(document.pageManager()->page(2), page2);
QCOMPARE(document.pageManager()->page(4), page6);
page4 = document.insertPage(2); // kwdocument uses 'after' instead of 'as' that the pageManager uses
QCOMPARE(page4.pageNumber(), 3);
page3 = document.insertPage(2);
QCOMPARE(page3.pageNumber(), 3);
QCOMPARE(page4.pageNumber(), 4);
QCOMPARE(document.pageManager()->page(2), page2);
QCOMPARE(document.pageManager()->page(3), page3);
QCOMPARE(document.pageManager()->page(4), page4);
QCOMPARE(document.pageManager()->page(5), page5);
document.removePage(-16);
document.removePage(16);
QCOMPARE(document.pageCount(), 9);
for (int i = document.pageCount() - 1; i >= 1; --i)
document.removePage(1);
QCOMPARE(document.pageCount(), 1);
QCOMPARE(document.pageManager()->page(1), page9);
QCOMPARE(document.pageCount(), 1);
document.removePage(1); //we can't remove the last page
QCOMPARE(document.pageCount(), 1);
}
示例3: convert
//.........这里部分代码省略.........
KoOdfWriteStore odfStore(store);
odfStore.manifestWriter(to);
KoXmlWriter* contentWriter = odfStore.contentWriter();
if (!contentWriter) {
delete store;
return KoFilter::CreationError;
}
KoGenStyles mainStyles;
KoXmlWriter *bodyWriter = odfStore.bodyWriter();
bodyWriter->startElement("office:body");
bodyWriter->startElement("office:text");
QString styleName("txt");
KoGenStyle style(KoGenStyle::ParagraphStyle, "paragraph");
style.addAttribute("style:display-name", styleName);
style.addProperty("fo:font-family", "dejavu sans mono", KoGenStyle::TextType);
style.addProperty("fo:font-family-generic", "modern", KoGenStyle::TextType);
style.addProperty("fo:font-size", "10pt", KoGenStyle::TextType);
style.addProperty("fo:font-weight", "normal", KoGenStyle::TextType);
QString name(QString(QUrl::toPercentEncoding(styleName, "", " ")).replace('%', '_'));
name = mainStyles.insert(style, name, KoGenStyles::DontAddNumberToName);
#else
KoStyleManager *styleManager = outputDoc->resourceManager()->resource(KoText::StyleManager).value<KoStyleManager*>();
KoParagraphStyle *p = styleManager->defaultParagraphStyle();
p->setFontFamily("dejavu sans mono");
p->setFontPointSize(10);
p->setFontStyleHint(QFont::TypeWriter);
outputDoc->appendPage();
QTextDocument *doc = outputDoc->mainFrameSet()->document();
//doc->setDefaultFont(p->font());
KoTextDocumentLayout *lay = dynamic_cast<KoTextDocumentLayout*>(doc->documentLayout());
Q_ASSERT(lay);
lay->setBlockLayout(true);
connect(lay, SIGNAL(layoutProgressChanged(int)), layoutUpdater, SLOT(setProgress(int)));
QTextCursor cursor(doc);
cursor.beginEditBlock();
QTextCharFormat charFormat;
((KoCharacterStyle*)p)->applyStyle(charFormat);
cursor.setCharFormat(charFormat);
#endif
QTextStream stream(&in);
Q_ASSERT(codec);
stream.setCodec(codec);
switch (paragraphStrategy) {
case 1: { // Sentence: Line-break at the end of a sentence.
QString stoppingPunctuation(".!?");
QString skippingEnd(" \"')");
while (!stream.atEnd()) {
QString paragraph;
for (;;) {
const QString line = stream.readLine();
if (line.isEmpty())
break;
paragraph += line + ' ';
int lastPos = line.length() - 1;