本文整理汇总了C#中Microsoft.Office.Interop.PowerPoint.Shape.PickUp方法的典型用法代码示例。如果您正苦于以下问题:C# Shape.PickUp方法的具体用法?C# Shape.PickUp怎么用?C# Shape.PickUp使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Microsoft.Office.Interop.PowerPoint.Shape
的用法示例。
在下文中一共展示了Shape.PickUp方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: SyncShape
public static void SyncShape(Shape refShape, Shape candidateShape,
bool pickupShapeBasic = true, bool pickupShapeFormat = true,
bool pickupTextContent = true, bool pickupTextFormat = true)
{
if (pickupShapeBasic)
{
SyncShapeRotation(refShape, candidateShape);
SyncShapeSize(refShape, candidateShape);
SyncShapeLocation(refShape, candidateShape);
}
if (pickupShapeFormat)
{
refShape.PickUp();
candidateShape.Apply();
}
if ((pickupTextContent || pickupTextFormat) &&
refShape.HasTextFrame == MsoTriState.msoTrue &&
candidateShape.HasTextFrame == MsoTriState.msoTrue)
{
var refTextRange = refShape.TextFrame2.TextRange;
var candidateTextRange = candidateShape.TextFrame2.TextRange;
if (pickupTextContent)
{
candidateTextRange.Text = refTextRange.Text;
}
var refParagraphCount = refShape.TextFrame2.TextRange.Paragraphs.Count;
var candidateParagraphCount = candidateShape.TextFrame2.TextRange.Paragraphs.Count;
if (refParagraphCount > 0)
{
string originalText = candidateTextRange.Text;
SyncTextRange(refTextRange.Paragraphs[refParagraphCount], candidateTextRange);
candidateTextRange.Text = originalText;
}
for (var i = 1; i <= candidateParagraphCount; i++)
{
var refParagraph = refTextRange.Paragraphs[i <= refParagraphCount ? i : refParagraphCount];
var candidateParagraph = candidateTextRange.Paragraphs[i];
SyncTextRange(refParagraph, candidateParagraph, pickupTextContent, pickupTextFormat);
}
}
}