本文整理汇总了C++中ParagraphStyle::setParEffectOffset方法的典型用法代码示例。如果您正苦于以下问题:C++ ParagraphStyle::setParEffectOffset方法的具体用法?C++ ParagraphStyle::setParEffectOffset怎么用?C++ ParagraphStyle::setParEffectOffset使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ParagraphStyle
的用法示例。
在下文中一共展示了ParagraphStyle::setParEffectOffset方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: handlePEOffset
void PropertyWidget_ParEffect::handlePEOffset(double offset)
{
if (!m_doc || !m_item)
return;
ParagraphStyle newStyle;
newStyle.setParEffectOffset(offset / m_unitRatio);
handleChanges(m_item, newStyle);
}
示例2: handleParEffectUse
void PropertyWidget_ParEffect::handleParEffectUse()
{
if (!m_doc || !m_item)
return;
ParagraphStyle newStyle;
enableParEffect(peCombo->currentIndex() != 0);
if (peCombo->currentIndex() == 1)
{
enableDropCap(true);
newStyle.setDropCapLines(dropCapLines->value());
newStyle.setHasDropCap(true);
newStyle.setHasBullet(false);
newStyle.setHasNum(false);
}
else if (peCombo->currentIndex() == 2)
{
enableBullet(true);
newStyle.setHasBullet(true);
QString bStr = bulletStrEdit->currentText();
if (bStr.isEmpty())
bStr = QChar(0x2022);
newStyle.setBulletStr(bStr);
newStyle.setHasNum(false);
newStyle.setHasDropCap(false);
}
else if (peCombo->currentIndex() == 3)
{
enableNum(true);
newStyle.setHasDropCap(false);
newStyle.setHasBullet(false);
newStyle.setHasNum(true);
newStyle.setNumName(numComboBox->currentText());
newStyle.setNumFormat(numFormatCombo->currentIndex());
newStyle.setNumLevel(numLevelSpin->value() -1);
newStyle.setNumStart(numStart->value());
newStyle.setNumPrefix(numPrefix->text());
newStyle.setNumSuffix(numSuffix->text());
if (newStyle.numName() == "<local block>")
{
newStyle.setNumOther(true);
newStyle.setNumHigher(true);
}
}
else
{
newStyle.setHasDropCap(false);
newStyle.setHasBullet(false);
newStyle.setHasNum(false);
}
newStyle.setParEffectOffset(peOffset->value() / m_unitRatio);
newStyle.setParEffectIndent(peIndent->isChecked());
handleChanges(m_item, newStyle);
}
示例3: readParagraphStyle
void FileLoader::readParagraphStyle(ParagraphStyle& vg, const QDomElement& pg, SCFonts &avail, ScribusDoc *currDoc)
{
vg.setName(pg.attribute("NAME"));
vg.setLineSpacingMode(static_cast<ParagraphStyle::LineSpacingMode>(pg.attribute("LINESPMode", "0").toInt()));
vg.setLineSpacing(ScCLocale::toDoubleC(pg.attribute("LINESP")));
vg.setLeftMargin(ScCLocale::toDoubleC(pg.attribute("INDENT"), 0.0));
if (pg.hasAttribute("RMARGIN"))
vg.setRightMargin(ScCLocale::toDoubleC(pg.attribute("RMARGIN"), 0.0));
else
vg.setRightMargin(0);
vg.setFirstIndent(ScCLocale::toDoubleC(pg.attribute("FIRST"), 0.0));
vg.setAlignment(static_cast<ParagraphStyle::AlignmentType>(pg.attribute("ALIGN").toInt()));
vg.setGapBefore(ScCLocale::toDoubleC(pg.attribute("VOR"), 0.0));
vg.setGapAfter(ScCLocale::toDoubleC(pg.attribute("NACH"), 0.0));
QString tmpf(pg.attribute("FONT", currDoc->itemToolPrefs().textFont));
currDoc->AllFonts->findFont(tmpf, currDoc);
vg.charStyle().setFont((*currDoc->AllFonts)[tmpf]);
vg.charStyle().setFontSize(qRound(ScCLocale::toDoubleC(pg.attribute("FONTSIZE"), 12.0) * 10.0));
vg.setHasDropCap(static_cast<bool>(pg.attribute("DROP", "0").toInt()));
vg.setPeCharStyleName(pg.attribute("DROPCHSTYLE", ""));
vg.setPeCharStyleName(pg.attribute("PECHSTYLE", ""));
vg.setDropCapLines(pg.attribute("DROPLIN", "2").toInt());
vg.setParEffectOffset(ScCLocale::toDoubleC(pg.attribute("DROPDIST"), 0.0));
vg.setParEffectOffset(ScCLocale::toDoubleC(pg.attribute("PEDIST"), 0.0));
vg.charStyle().setFeatures(static_cast<StyleFlag>(pg.attribute("EFFECT", "0").toInt()).featureList());
vg.charStyle().setFillColor(pg.attribute("FCOLOR", currDoc->itemToolPrefs().shapeFillColor));
vg.charStyle().setFillShade(pg.attribute("FSHADE", "100").toInt());
vg.charStyle().setStrokeColor(pg.attribute("SCOLOR", currDoc->itemToolPrefs().shapeLineColor));
vg.charStyle().setStrokeShade(pg.attribute("SSHADE", "100").toInt());
if (static_cast<bool>(pg.attribute("BASE", "0").toInt()))
vg.setLineSpacingMode(ParagraphStyle::BaselineGridLineSpacing);
vg.charStyle().setShadowXOffset(qRound(ScCLocale::toDoubleC(pg.attribute("TXTSHX"), 5.0)) * 10);
vg.charStyle().setShadowYOffset(qRound(ScCLocale::toDoubleC(pg.attribute("TXTSHY"), -5.0)) * 10);
vg.charStyle().setOutlineWidth(qRound(ScCLocale::toDoubleC(pg.attribute("TXTOUT"), 1.0)) * 10);
vg.charStyle().setUnderlineOffset(qRound(ScCLocale::toDoubleC(pg.attribute("TXTULP"), -0.1)) * 10);
vg.charStyle().setUnderlineWidth(qRound(ScCLocale::toDoubleC(pg.attribute("TXTULW"), -0.1)) * 10);
vg.charStyle().setStrikethruOffset(qRound(ScCLocale::toDoubleC(pg.attribute("TXTSTP"), -0.1)) * 10);
vg.charStyle().setStrikethruWidth(qRound(ScCLocale::toDoubleC(pg.attribute("TXTSTW"), -0.1)) * 10);
vg.charStyle().setScaleH(qRound(ScCLocale::toDoubleC(pg.attribute("SCALEH"), 100.0)) * 10);
vg.charStyle().setScaleV(qRound(ScCLocale::toDoubleC(pg.attribute("SCALEV"), 100.0)) * 10);
vg.charStyle().setBaselineOffset(qRound(ScCLocale::toDoubleC(pg.attribute("BASEO"), 0.0)) * 10);
vg.charStyle().setTracking(qRound(ScCLocale::toDoubleC(pg.attribute("KERN"), 0.0)) * 10);
if ((pg.hasAttribute("NUMTAB")) && (pg.attribute("NUMTAB", "0").toInt() != 0))
{
QList<ParagraphStyle::TabRecord> tbs;
ParagraphStyle::TabRecord tb;
QString tmp = pg.attribute("TABS");
QTextStream tgv(&tmp, QIODevice::ReadOnly);
QString xf, xf2;
for (int cxv = 0; cxv < pg.attribute("NUMTAB", "0").toInt(); cxv += 2)
{
tgv >> xf;
tgv >> xf2;
tb.tabPosition = ScCLocale::toDoubleC(xf2);
tb.tabType = static_cast<int>(ScCLocale::toDoubleC(xf));
tb.tabFillChar = QChar();
tbs.append(tb);
}
vg.setTabValues(tbs);
tmp = "";
}
示例4: if
/*! 02.01.2007 - 05.01.2007 : Joachim Neu : Create a paragraph style.
Special thanks go to avox for helping me! */
PyObject *scribus_createparagraphstyle(PyObject* /* self */, PyObject* args, PyObject* keywords)
{
//TODO - new paragraph properties for bullets and numbering
char* keywordargs[] = {
const_cast<char*>("name"),
const_cast<char*>("linespacingmode"),
const_cast<char*>("linespacing"),
const_cast<char*>("alignment"),
const_cast<char*>("leftmargin"),
const_cast<char*>("rightmargin"),
const_cast<char*>("gapbefore"),
const_cast<char*>("gapafter"),
const_cast<char*>("firstindent"),
const_cast<char*>("hasdropcap"),
const_cast<char*>("dropcaplines"),
const_cast<char*>("dropcapoffset"),
const_cast<char*>("charstyle"),
NULL};
char *Name = const_cast<char*>(""), *CharStyle = const_cast<char*>("");
int LineSpacingMode = 0, Alignment = 0, DropCapLines = 2, HasDropCap = 0;
double LineSpacing = 15.0, LeftMargin = 0.0, RightMargin = 0.0;
double GapBefore = 0.0, GapAfter = 0.0, FirstIndent = 0.0, PEOffset = 0;
if (!PyArg_ParseTupleAndKeywords(args, keywords, "es|ididddddiides",
keywordargs, "utf-8", &Name, &LineSpacingMode, &LineSpacing, &Alignment,
&LeftMargin, &RightMargin, &GapBefore, &GapAfter, &FirstIndent,
&HasDropCap, &DropCapLines, &PEOffset, "utf-8", &CharStyle))
return NULL;
if(!checkHaveDocument())
return NULL;
if (Name == EMPTY_STRING)
{
PyErr_SetString(PyExc_ValueError, QObject::tr("Cannot have an empty paragraph style name.","python error").toLocal8Bit().constData());
return NULL;
}
ParagraphStyle TmpParagraphStyle;
TmpParagraphStyle.setName(Name);
TmpParagraphStyle.setLineSpacingMode((ParagraphStyle::LineSpacingMode)LineSpacingMode);
TmpParagraphStyle.setLineSpacing(LineSpacing);
TmpParagraphStyle.setAlignment((ParagraphStyle::AlignmentType)Alignment);
TmpParagraphStyle.setLeftMargin(LeftMargin);
TmpParagraphStyle.setFirstIndent(FirstIndent);
TmpParagraphStyle.setRightMargin(RightMargin);
TmpParagraphStyle.setGapBefore(GapBefore);
TmpParagraphStyle.setGapAfter(GapAfter);
if(HasDropCap == 0)
TmpParagraphStyle.setHasDropCap(false);
else if(HasDropCap == 1)
TmpParagraphStyle.setHasDropCap(true);
else
{
PyErr_SetString(PyExc_ValueError, QObject::tr("hasdropcap has to be 0 or 1.","python error").toLocal8Bit().constData());
return NULL;
}
TmpParagraphStyle.setDropCapLines(DropCapLines);
TmpParagraphStyle.setParEffectOffset(PEOffset);
TmpParagraphStyle.charStyle().setParent(CharStyle);
StyleSet<ParagraphStyle> TmpStyleSet;
TmpStyleSet.create(TmpParagraphStyle);
ScCore->primaryMainWindow()->doc->redefineStyles(TmpStyleSet, false);
// PV - refresh the Style Manager window.
// I thought that this can work but it doesn't:
// ScCore->primaryMainWindow()->styleMgr()->reloadStyleView();
// So the brute force setDoc is called...
ScCore->primaryMainWindow()->styleMgr()->setDoc(ScCore->primaryMainWindow()->doc);
Py_RETURN_NONE;
}