Class KeepPartAndCloneSolidObjectToNextPageAlgorithm
ชื่อพื้นที่: Aspose.Note.Saving การประกอบ: Aspose.Note.dll (25.4.0)
เพิ่มส่วนด้านบนของวัตถุไปยังด้านล่างของหน้าและคลอนรายการเต็มไปยังหน้าต่อไปถ้ามันไม่เหมาะสมในหน้าเดิม
public class KeepPartAndCloneSolidObjectToNextPageAlgorithm : PageSplittingAlgorithm
{
private bool _keepWithNext;
private Shape _clonedShape;
public KeepPartAndCloneSolidObjectToNextPageAlgorithm()
{
_keepWithNext = false;
_clonedShape = null;
}
protected override bool ShouldSplit(Node node)
{
if (node is Shape shape && !_keepWithNext && shape.Type == ShapeType.SolidObject)
{
CloneSolidObject(shape);
_keepWithNext = true;
return false;
}
_keepWithNext = false;
return base.ShouldSplit(node);
}
private void CloneSolidObject(Shape shape)
{
if (shape.IsTextFrame)
{
_clonedShape = shape.Clone();
}
else
{
using (var memoryStream = new MemoryStream())
{
shape.CopyTo(memoryStream);
_clonedShape = Shape.FromPKI(memoryStream);
}
}
}
}
Inheritance
object ← PageSplittingAlgorithm ← KeepPartAndCloneSolidObjectToNextPageAlgorithm
อนุญาโตตุลาการ
object.GetType() , object.MemberwiseClone() , object.ToString() , object.Equals(object?) , object.Equals(object?, object?) , object.ReferenceEquals(object?, object?) , object.GetHashCode()
Examples
เมื่อหน้า OneNote ระยะยาวจะถูกบันทึกในรูปแบบ PDF พวกเขาจะแบ่งออกระหว่างหน้า ตัวอย่างแสดงให้เห็นวิธีการตั้งค่าโลจิกการแบ่งของวัตถุที่ตั้งอยู่บนช่องว่างของหน้า
string dataDir = RunExamples.GetDataDir_LoadingAndSaving();
Document doc = new Document(dataDir + "Aspose.one");
var pdfSaveOptions = new PdfSaveOptions();
pdfSaveOptions.PageSplittingAlgorithm = new KeepPartAndCloneSolidObjectToNextPageAlgorithm(100);
pdfSaveOptions.PageSplittingAlgorithm = new KeepPartAndCloneSolidObjectToNextPageAlgorithm(400);
dataDir += "PageSplittUsingKeepPartAndCloneSolidObjectToNextPageAlgorithm_out.pdf";
doc.Save(dataDir);
เมื่อหน้า OneNote ระยะยาวจะถูกบันทึกในรูปแบบ PDF พวกเขาจะแบ่งเป็นหน้า ตัวอย่างแสดงให้เห็นว่าวิธีการตั้งค่าโลจิกการแบ่งของวัตถุที่ตั้งอยู่บนช่องว่างของหน้า
string dataDir = RunExamples.GetDataDir_LoadingAndSaving();
Document doc = new Document(dataDir + "Aspose.one");
var pdfSaveOptions = new PdfSaveOptions();
pdfSaveOptions.PageSplittingAlgorithm = new AlwaysSplitObjectsAlgorithm();
float heightLimitOfClonedPart = 500;
pdfSaveOptions.PageSplittingAlgorithm = new KeepPartAndCloneSolidObjectToNextPageAlgorithm(heightLimitOfClonedPart);
pdfSaveOptions.PageSplittingAlgorithm = new KeepSolidObjectsAlgorithm(100);
dataDir += "UsingKeepSOlidObjectsAlgorithm_out.pdf";
doc.Save(dataDir, pdfSaveOptions);
pdfSaveOptions.PageSplittingAlgorithm = new KeepSolidObjectsAlgorithm(400);
dataDir += "UsingKeepSOlidObjectsAlgorithm_outWithHigherLimit.pdf";
doc.Save(dataDir, pdfSaveOptions);
Constructors
KeepPartAndCloneSolidObjectToNextPageAlgorithm()
เปิดตัวตัวอย่างใหม่ของ Aspose.Note.Saving.KeepPartAndCloneSolidObjectToNextPageAlgorithm class, ใช้ข้อ จํากัด ความสูงที่กําหนดเองของชิ้นส่วนคลอน
public KeepPartAndCloneSolidObjectToNextPageAlgorithm()
{
}
KeepPartAndCloneSolidObjectToNextPageAlgorithm( Float)
เริ่มต้นตัวอย่างใหม่ของ Aspose.Note.Saving.KeepPartAndCloneSolidObjectToNextPageAlgorithm class, ใช้ระดับความสูงที่เฉพาะเจาะจงของส่วนคลอน
public KeepPartAndCloneSolidObjectToNextPageAlgorithm(float heightLimitOfClonedPart)
{
}
Parameters
heightLimitOfClonedPart
float
ความสูงสูงสุดของส่วนคลอน
Fields
DefaultHeightLimitOfClonedPart
ขนาดที่กําหนดเอง max ของชิ้นส่วนคลอน
public const float DefaultHeightLimitOfClonedPart = 200;
หมายเลข
Properties
HeightLimitOfClonedPart
ได้รับระดับความสูงของส่วนที่คลอน
public float HeightLimitOfClonedPart
{
get;
}