Exemplo n.º 1
0
bool PDFOptionsIO::readPDFVersion()
{
	QString pdfVersString;
	if (!readElem(m_root, "pdfVersion", &pdfVersString))
		return false;
	if (pdfVersString == "X3")
	{
		m_opts->Version = PDFOptions::PDFVersion_X3;
		return true;
	}
	else if (pdfVersString == "13")
	{
		m_opts->Version = PDFOptions::PDFVersion_13;
		return true;
	}
	else if (pdfVersString == "14")
	{
		m_opts->Version = PDFOptions::PDFVersion_14;
		return true;
	}
	else if (pdfVersString == "15")
	{
		m_opts->Version = PDFOptions::PDFVersion_15;
		return true;
	}
	else
	{
		m_error = QObject::tr("Unable to read settings XML:")
			.arg(QObject::tr("<pdfVersion> invalid", "Load PDF settings"));
		return false;
	}
}
Exemplo n.º 2
0
bool PDFOptionsIO::readLPISettings()
{
	// XML structure will be like this:
	// <lpiSettings>
	//   <lpiSettingsEntry name="blah">
	//     <frequency value="0">
	//     <angle value="0">
	//     <spotFunc value="0">
	//   </lpiSettingsEntry>
	//   <lpiSettingsEntry name="blah2">
	//     ...
	//   </lpiSettingsEntry>
	//   ...
	// </lpiSettings>
	QDomNode basenode = getUniqueNode(m_root, "lpiSettings");
	QDomElement lpiSettings = getValueElement(basenode, "lpiSettings", false);
	if (lpiSettings.isNull())
		return false;
	QMap<QString,LPIData> lpiMap;
	for (QDomNode node = lpiSettings.firstChild(); !node.isNull(); node = node.nextSibling())
	{
		QDomElement elem = getValueElement(basenode, "lpiSettingsEntry", false);
		if (elem.isNull())
			return false;
		QString name (elem.attribute("name"));
		if (name.isNull())
		{
			m_error = QObject::tr("Unable to read settings XML:")
				.arg(QObject::tr("element <lpiSettingsEntry> lacks `name' attribute", "Load PDF settings")
					.arg(name)
				);
			return false;
		}
		LPIData lpi;
		if (!readElem(elem, "frequency", &lpi.Frequency))
			return false;
		if (!readElem(elem, "angle", &lpi.Angle))
			return false;
		if (!readElem(elem, "spotFunc", &lpi.SpotFunc))
			return false;
		lpiMap[name] = lpi;
	}
	return true;
}
Exemplo n.º 3
0
bool PDFOptionsIO::readPresentationData()
{
	// XML structure will be like this:
	// <presentationSettings>
	//   <presentationSettingsEntry>
	//     <pageEffectDuration value="0"/>
	//     <pageViewDuration value="0"/>
	//     <effectType value="0"/>
	//     <dm value="0"/>
	//     <m value="0"/>
	//     <di value="0"/>
	//   </presentationSettingsEntry>
	//   <presentationSettingsEntry>
	//     ...
	//   </presentationSettingsEntry>
	//   ...
	// </presentationSettings>
	QDomNode basenode = getUniqueNode(m_root, "presentationSettings");
	QDomElement pSettings = getValueElement(basenode, "presentationSettings", false);
	if (pSettings.isNull())
		return false;
	QList<PDFPresentationData> pList;
	for (QDomNode node = pSettings.firstChild(); !node.isNull(); node = node.nextSibling())
	{
		QDomElement elem = getValueElement(basenode, "presentationSettingsEntry", false);
		if (elem.isNull())
			return false;
		PDFPresentationData pres;
		if (!readElem(elem, "pageEffectDuration", &pres.pageEffectDuration))
			return false;
		if (!readElem(elem, "pageViewDuration", &pres.pageViewDuration))
			return false;
		if (!readElem(elem, "effectType", &pres.effectType))
			return false;
		if (!readElem(elem, "dm", &pres.Dm))
			return false;
		if (!readElem(elem, "m", &pres.M))
			return false;
		if (!readElem(elem, "di", &pres.Di))
			return false;
		pList.append(pres);
	}
	return true;
}
Exemplo n.º 4
0
// Helper for readFrom(...) to read settings from the DOM
bool PDFOptionsIO::readSettings()
{
	// Get the root element
	m_root = m_doc.documentElement();
	if (m_root.isNull())
	{
		m_error = QObject::tr("Unable to read settings XML: %1")
			.arg(QObject::tr("null root node", "Load PDF settings"));
	}
	// and start processing elements
	if (!readElem(m_root, "firstUse", &m_opts->firstUse))
		return false;
	if (!readElem(m_root, "thumbnails", &m_opts->Thumbnails))
		return false;
	if (!readElem(m_root, "articles", &m_opts->Articles))
		return false;
	if (!readElem(m_root, "useLayers", &m_opts->useLayers))
		return false;
	if (!readElem(m_root, "compress", &m_opts->Compress))
		return false;
	if (!readElem(m_root, "compressMethod", (int*) &m_opts->CompressMethod))
		return false;
	if (!readElem(m_root, "quality", &m_opts->Quality))
		return false;
	if (!readElem(m_root, "recalcPic", &m_opts->RecalcPic))
		return false;
	if (!readElem(m_root, "bookmarks", &m_opts->Bookmarks))
		return false;
	if (!readElem(m_root, "picRes", &m_opts->PicRes))
		return false;
	if (!readElem(m_root, "embedPDF", &m_opts->embedPDF))
		m_opts->embedPDF = false;
	readPDFVersion();
	if (!readElem(m_root, "resolution", &m_opts->Resolution))
		return false;
	if (!readElem(m_root, "binding", &m_opts->Binding))
		return false;
	if (!readList(m_root, "embedFonts", &m_opts->EmbedList))
		return false;
	if (!readList(m_root, "subsetFonts", &m_opts->SubsetList))
		return false;
	if (!readElem(m_root, "mirrorH", &m_opts->MirrorH))
		return false;
	if (!readElem(m_root, "mirrorV", &m_opts->MirrorV))
		return false;
	if (!readElem(m_root, "rotateDegrees", &m_opts->RotateDeg))
		return false;
	if (!readElem(m_root, "presentMode", &m_opts->PresentMode))
		return false;
	if (!readPresentationData())
		return false;
	if (!readElem(m_root, "filename", &m_opts->fileName))
		return false;
	if (!readElem(m_root, "isGrayscale", &m_opts->isGrayscale))
		return false;
	if (!readElem(m_root, "useRGB", &m_opts->UseRGB))
		return false;
	if (!readElem(m_root, "useProfiles", &m_opts->UseProfiles))
		return false;
	if (!readElem(m_root, "useProfiles2", &m_opts->UseProfiles2))
		return false;
	if (!readElem(m_root, "useLPI", &m_opts->UseLPI))
		return false;
	if (!readElem(m_root, "useSpotColors", &m_opts->UseSpotColors))
		return false;
	if (!readElem(m_root, "doMultiFile", &m_opts->doMultiFile))
		return false;
	if (!readLPISettings())
		return false;
	if (!readElem(m_root, "solidProf", &m_opts->SolidProf))
		return false;
	if (!readElem(m_root, "sComp", &m_opts->SComp))
		return false;
	if (!readElem(m_root, "imageProf", &m_opts->ImageProf))
		return false;
	if (!readElem(m_root, "embeddedI", &m_opts->EmbeddedI))
		return false;
	if (!readElem(m_root, "intent2", &m_opts->Intent2))
		return false;
	if (!readElem(m_root, "printProf", &m_opts->PrintProf))
		return false;
	if (!readElem(m_root, "info", &m_opts->Info))
		return false;
	if (!readElem(m_root, "intent", &m_opts->Intent))
		return false;
	if (!readElem(m_root, "bleedTop", &m_opts->bleeds.Top))
		return false;
	if (!readElem(m_root, "bleedLeft", &m_opts->bleeds.Left))
		return false;
	if (!readElem(m_root, "bleedRight", &m_opts->bleeds.Right))
		return false;
	if (!readElem(m_root, "bleedBottom", &m_opts->bleeds.Bottom))
		return false;
	if (!readElem(m_root, "encrypt", &m_opts->Encrypt))
		return false;
	if (!readElem(m_root, "passOwner", &m_opts->PassOwner))
		return false;
	if (!readElem(m_root, "passUser", &m_opts->PassUser))
		return false;
	if (!readElem(m_root, "permissions", &m_opts->Permissions))
		return false;
	return true;
}