public override void WriteCustomNonSharedItemProps(BinaryWriter spbifWriter, RPLWriter rplWriter, PageContext pageContext) { AspNetCore.ReportingServices.OnDemandReportRendering.Image image = (AspNetCore.ReportingServices.OnDemandReportRendering.Image)base.m_source; ImageInstance imageInstance = (ImageInstance)image.Instance; System.Drawing.Image image2 = null; bool flag = this.AutoSizeImage(pageContext, imageInstance, out image2); try { if (flag) { base.WriteImage(null, "InvalidImage", spbifWriter, pageContext, image2); } else { base.WriteImage(imageInstance, null, spbifWriter, pageContext, image2); } } finally { if (image2 != null) { image2.Dispose(); image2 = null; } } base.WriteActionInfo(image.ActionInfo, spbifWriter, pageContext, 7); base.WriteImageMapAreaInstanceCollection(imageInstance.ActionInfoWithDynamicImageMapAreas, spbifWriter, pageContext); }
internal override void WriteCustomNonSharedItemProps(BinaryWriter spbifWriter, RPLWriter rplWriter, PageContext pageContext) { Microsoft.ReportingServices.OnDemandReportRendering.Image image = (Microsoft.ReportingServices.OnDemandReportRendering.Image)m_source; ImageInstance imageInstance = (ImageInstance)image.Instance; System.Drawing.Image gdiImage = null; bool flag = AutoSizeImage(pageContext, imageInstance, out gdiImage); try { if (flag) { WriteImage(null, "InvalidImage", spbifWriter, pageContext, gdiImage); } else { WriteImage(imageInstance, null, spbifWriter, pageContext, gdiImage); } } finally { if (gdiImage != null) { gdiImage.Dispose(); gdiImage = null; } } WriteActionInfo(image.ActionInfo, spbifWriter, pageContext, 7); WriteImageMapAreaInstanceCollection(imageInstance.ActionInfoWithDynamicImageMapAreas, spbifWriter, pageContext); }
/// <summary> /// Collect the parameters and export /// </summary> /// <returns></returns> public override bool Import() { using (Transaction t = new Transaction(m_activeDoc)) { t.SetName("Import"); t.Start(); // Step 1: Create an ImageType //ImageTypeOptions specify the source of the image // If the source is a PDF file then ImageTypeOptions can be used to: // - Select a specific page from the PDF // - Select a Resolution (in dots-per-inch) at which to rasterize the PDF // For other image types the page number should be 1, and the resolution is only used to determine the size of the image ImageTypeOptions typeOptions = new ImageTypeOptions(m_importFileFullName); ImageType imageType = ImageType.Create(m_activeDoc, typeOptions); // Step 2: Create an ImageInstance, but only if the active view is able to contain images. View view = CommandData.Application.ActiveUIDocument.Document.ActiveView; if (ImageInstance.IsValidView(view)) { // ImagePlacementOptions ImagePlacementOptions placementOptions = new ImagePlacementOptions(); placementOptions.PlacementPoint = Autodesk.Revit.DB.BoxPlacement.TopLeft; placementOptions.Location = new XYZ(1, 1, 1); ImageInstance imageInstance = ImageInstance.Create(m_activeDoc, view, imageType.Id, placementOptions); } t.Commit(); } return(true); }
public void WriteToStream(Type type, object value, Stream stream, HttpContent content) { ImageInstance imageinst = (ImageInstance)value; WebClient client = new WebClient(); //image.Save(stream, ImageFormat.Jpeg); image.Dispose(); }
public SkryptInstance Construct(int width, int height) { var obj = new ImageInstance(Engine, width, height); obj.GetProperties(Template); obj.TypeObject = this; return(obj); }
private void CheckAutoSize(Microsoft.ReportingServices.OnDemandReportRendering.Image image, PageContext pageContext) { if (image.Sizing == Microsoft.ReportingServices.OnDemandReportRendering.Image.Sizings.AutoSize) { ImageInstance imageInstance = (ImageInstance)image.Instance; System.Drawing.Image gdiImage = null; m_invalidImage = AutoSizeImage(pageContext, imageInstance, out gdiImage); if (gdiImage != null) { m_imageProps = new GDIImageProps(gdiImage); gdiImage.Dispose(); } } }
private void CheckAutoSize(AspNetCore.ReportingServices.OnDemandReportRendering.Image image, PageContext pageContext) { if (image.Sizing == AspNetCore.ReportingServices.OnDemandReportRendering.Image.Sizings.AutoSize) { ImageInstance imageInstance = (ImageInstance)image.Instance; System.Drawing.Image image2 = null; this.m_invalidImage = this.AutoSizeImage(pageContext, imageInstance, out image2); if (image2 != null) { this.m_imageProps = new GDIImageProps(image2); image2.Dispose(); } } }
internal override void WriteCustomNonSharedItemProps(RPLElementProps nonSharedProps, PageContext pageContext) { Microsoft.ReportingServices.OnDemandReportRendering.Image image = (Microsoft.ReportingServices.OnDemandReportRendering.Image)m_source; ImageInstance imageInstance = (ImageInstance)image.Instance; RPLImageProps rPLImageProps = (RPLImageProps)nonSharedProps; if (m_invalidImage) { WriteInvalidImage(rPLImageProps, pageContext, m_imageProps); } else { WriteImage(imageInstance, null, rPLImageProps, pageContext, m_imageProps); } rPLImageProps.ActionInfo = PageItem.WriteActionInfo(image.ActionInfo); }
public override void WriteCustomNonSharedItemProps(RPLElementProps nonSharedProps, PageContext pageContext) { AspNetCore.ReportingServices.OnDemandReportRendering.Image image = (AspNetCore.ReportingServices.OnDemandReportRendering.Image)base.m_source; ImageInstance imageInstance = (ImageInstance)image.Instance; RPLImageProps rPLImageProps = (RPLImageProps)nonSharedProps; if (this.m_invalidImage) { base.WriteInvalidImage(rPLImageProps, pageContext, this.m_imageProps); } else { base.WriteImage(imageInstance, null, rPLImageProps, pageContext, this.m_imageProps); } rPLImageProps.ActionInfo = PageItem.WriteActionInfo(image.ActionInfo); }
public override void WriteCustomNonSharedItemProps(BinaryWriter spbifWriter, PageContext pageContext) { AspNetCore.ReportingServices.OnDemandReportRendering.Image image = (AspNetCore.ReportingServices.OnDemandReportRendering.Image)base.m_source; ImageInstance imageInstance = (ImageInstance)image.Instance; if (this.m_invalidImage) { if (base.m_nonSharedOffset < 0) { base.WriteInvalidImage(spbifWriter, pageContext, this.m_imageProps); } } else { base.WriteImage(imageInstance, null, spbifWriter, pageContext, this.m_imageProps, false); } base.WriteActionInfo(image.ActionInfo, spbifWriter); }
internal static string SharedImageStreamName(Microsoft.ReportingServices.OnDemandReportRendering.Image image, PageContext pageContext) { ImageInstance imageInstance = (ImageInstance)image.Instance; System.Drawing.Image gdiImage = null; bool num = new Image(image, pageContext, createForRepeat: false).AutoSizeImage(pageContext, imageInstance, out gdiImage); if (gdiImage != null) { gdiImage.Dispose(); gdiImage = null; } if (num) { return("InvalidImage"); } return(imageInstance?.StreamName); }
internal override void WriteCustomNonSharedItemProps(BinaryWriter spbifWriter, PageContext pageContext) { Microsoft.ReportingServices.OnDemandReportRendering.Image image = (Microsoft.ReportingServices.OnDemandReportRendering.Image)m_source; ImageInstance imageInstance = (ImageInstance)image.Instance; if (m_invalidImage) { if (m_nonSharedOffset < 0) { WriteInvalidImage(spbifWriter, pageContext, m_imageProps); } } else { WriteImage(imageInstance, null, spbifWriter, pageContext, m_imageProps, writeShared: false); } WriteActionInfo(image.ActionInfo, spbifWriter); }
internal override void WriteCustomNonSharedItemProps(RPLElementProps nonSharedProps, RPLWriter rplWriter, PageContext pageContext) { Microsoft.ReportingServices.OnDemandReportRendering.Image image = (Microsoft.ReportingServices.OnDemandReportRendering.Image)m_source; ImageInstance imageInstance = (ImageInstance)image.Instance; System.Drawing.Image gdiImage = null; RPLImageProps rPLImageProps = (RPLImageProps)nonSharedProps; if (AutoSizeImage(pageContext, imageInstance, out gdiImage)) { WriteImage(null, "InvalidImage", rPLImageProps, pageContext, gdiImage); } else { WriteImage(imageInstance, null, rPLImageProps, pageContext, gdiImage); } rPLImageProps.ActionInfo = WriteActionInfo(image.ActionInfo, pageContext); rPLImageProps.ActionImageMapAreas = WriteImageMapAreaInstanceCollection(imageInstance.ActionInfoWithDynamicImageMapAreas, pageContext); }
/// <summary> /// Collect the parameters and export /// </summary> /// <returns></returns> public override bool Import() { using (Transaction t = new Transaction(m_activeDoc)) { t.SetName("Import"); t.Start(); // Step 1: Create an ImageType //ImageTypeOptions specifies the source of the image, and how to create the ImageType. // It can be used to specify: // - The image file. Either as a local file path, or as an ExternalResourceRef // - Whether to store the local file path as an absolute path or a relative path. // - Whether to create an Import or a Link image. // In addition, if the source is a PDF file, then ImageTypeOptions can be used to specify: // - which page from the PDF to use // - the resolution (in dots-per-inch) at which to rasterize the PDF // For other image types the page number should be 1 (the default), // and the resolution is only used to determine the size of the image. ImageTypeOptions typeOptions = new ImageTypeOptions(m_importFileFullName, true, ImageTypeSource.Import); ImageType imageType = ImageType.Create(m_activeDoc, typeOptions); // Step 2: Create an ImageInstance, but only if the active view is able to contain images. View view = CommandData.Application.ActiveUIDocument.Document.ActiveView; if (ImageInstance.IsValidView(view)) { // ImagePlacementOptions ImagePlacementOptions placementOptions = new ImagePlacementOptions(); placementOptions.PlacementPoint = Autodesk.Revit.DB.BoxPlacement.TopLeft; placementOptions.Location = new XYZ(1, 1, 1); ImageInstance imageInstance = ImageInstance.Create(m_activeDoc, view, imageType.Id, placementOptions); } t.Commit(); } return(true); }
public static string SharedImageStreamName(AspNetCore.ReportingServices.OnDemandReportRendering.Image image, PageContext pageContext) { ImageInstance imageInstance = (ImageInstance)image.Instance; System.Drawing.Image image2 = null; Image image3 = new Image(image, pageContext, false); bool flag = image3.AutoSizeImage(pageContext, imageInstance, out image2); if (image2 != null) { image2.Dispose(); image2 = null; } if (flag) { return("InvalidImage"); } if (imageInstance != null) { return(imageInstance.StreamName); } return(null); }
internal bool RegisterItem(PageItem pageItem, PageContext pageContext) { if (m_itemFound || pageItem == null) { return(false); } switch (m_eventType) { case EventType.Collect: { ReportItemInstance instance5 = pageItem.Source.Instance; if (pageContext.Labels != null) { pageContext.Labels.WriteDocMapLabel(instance5); } if (pageContext.Bookmarks != null) { pageContext.Bookmarks.WriteBookmark(instance5); } if (pageContext.PageBookmarks != null) { pageContext.RegisterPageBookmark(instance5); } if (pageItem.ItemState != PageItem.State.OnPageHidden) { return(false); } break; } case EventType.BookmarkNavigationEvent: { ReportItemInstance instance2 = pageItem.Source.Instance; if (instance2.Bookmark != null && SPBProcessing.CompareWithOrdinalComparison(m_bookmarkId, instance2.Bookmark, ignoreCase: false) == 0) { m_itemFound = true; m_itemInfo = instance2.UniqueName; return(false); } if (pageItem.ItemState != PageItem.State.OnPageHidden) { return(false); } break; } case EventType.DrillthroughEvent: { ReportItemInstance instance = pageItem.Source.Instance; TextBoxInstance textBoxInstance = instance as TextBoxInstance; if (textBoxInstance != null) { Microsoft.ReportingServices.OnDemandReportRendering.TextBox textBox = (Microsoft.ReportingServices.OnDemandReportRendering.TextBox)pageItem.Source; if (!HasMatchingDrillthrough(textBox.ActionInfo)) { foreach (ParagraphInstance paragraphInstance in textBoxInstance.ParagraphInstances) { foreach (TextRunInstance textRunInstance in paragraphInstance.TextRunInstances) { Microsoft.ReportingServices.OnDemandReportRendering.TextRun definition = textRunInstance.Definition; if (HasMatchingDrillthrough(definition.ActionInfo)) { return(false); } } } } } else { ImageInstance imageInstance = instance as ImageInstance; if (imageInstance != null) { if (!HasMatchingDrillthrough(imageInstance.ActionInfoWithDynamicImageMapAreas)) { Microsoft.ReportingServices.OnDemandReportRendering.Image image = (Microsoft.ReportingServices.OnDemandReportRendering.Image)pageItem.Source; HasMatchingDrillthrough(image.ActionInfo); } } else { IDynamicImageInstance dynamicImageInstance = instance as IDynamicImageInstance; if (dynamicImageInstance != null) { ActionInfoWithDynamicImageMapCollection actionImageMaps; using (dynamicImageInstance.GetImage(DynamicImageInstance.ImageType.PNG, out actionImageMaps)) { } HasMatchingDrillthrough(actionImageMaps); } } } if (m_itemFound) { return(false); } if (pageItem.ItemState != PageItem.State.OnPageHidden) { return(false); } break; } case EventType.DocumentMapNavigationEvent: { ReportItemInstance instance3 = pageItem.Source.Instance; if (SPBProcessing.CompareWithOrdinalComparison(m_itemInfo, instance3.UniqueName, ignoreCase: true) == 0) { m_itemFound = true; return(false); } if (pageItem.ItemState != PageItem.State.OnPageHidden) { return(false); } break; } case EventType.GetDocumentMap: { ReportItemInstance instance4 = pageItem.Source.Instance; if (pageContext.Labels != null) { pageContext.Labels.WriteDocMapLabel(instance4); } if (pageItem.ItemState != PageItem.State.OnPageHidden) { return(false); } break; } case EventType.FindChart: { if (pageItem.ItemState == PageItem.State.OnPageHidden) { break; } ReportItem source2 = pageItem.Source; if (SPBProcessing.CompareWithOrdinalComparison(m_itemInfo, source2.Instance.UniqueName, ignoreCase: true) == 0) { m_itemFound = true; ChartInstance chartInstance2 = source2.Instance as ChartInstance; if (chartInstance2 != null) { WriteDynamicImageStream(chartInstance2.GetImage()); } } break; } case EventType.FindGaugePanel: { if (pageItem.ItemState == PageItem.State.OnPageHidden) { break; } ReportItem source3 = pageItem.Source; if (SPBProcessing.CompareWithOrdinalComparison(m_itemInfo, source3.Instance.UniqueName, ignoreCase: true) == 0) { m_itemFound = true; GaugePanelInstance gaugePanelInstance2 = source3.Instance as GaugePanelInstance; if (gaugePanelInstance2 != null) { WriteDynamicImageStream(gaugePanelInstance2.GetImage()); } } break; } case EventType.FindMap: { if (pageItem.ItemState == PageItem.State.OnPageHidden) { break; } ReportItem source5 = pageItem.Source; if (SPBProcessing.CompareWithOrdinalComparison(m_itemInfo, source5.Instance.UniqueName, ignoreCase: true) == 0) { m_itemFound = true; MapInstance mapInstance2 = source5.Instance as MapInstance; if (mapInstance2 != null) { WriteDynamicImageStream(mapInstance2.GetImage()); } } break; } case EventType.FindImage: { if (pageItem.ItemState == PageItem.State.OnPageHidden) { break; } ReportItem source4 = pageItem.Source; if (SPBProcessing.CompareWithOrdinalComparison(m_itemInfo, source4.Instance.UniqueName, ignoreCase: true) != 0) { break; } m_itemFound = true; ImageInstance imageInstance2 = source4.Instance as ImageInstance; if (imageInstance2 != null) { Stream stream3 = m_createAndRegisterStream(m_streamName, string.Empty, null, imageInstance2.MIMEType, willSeek: false, StreamOper.CreateAndRegister); byte[] imageData = imageInstance2.ImageData; if (stream3 != null && imageData != null && imageData.Length != 0) { stream3.Write(imageData, 0, imageData.Length); } } break; } case EventType.ImageConsolidation: { if (pageItem.ItemState == PageItem.State.OnPageHidden) { break; } ReportItem source = pageItem.Source; GaugePanelInstance gaugePanelInstance = source.Instance as GaugePanelInstance; Stream stream = null; if (gaugePanelInstance != null) { stream = gaugePanelInstance.GetImage(); } else { ChartInstance chartInstance = source.Instance as ChartInstance; if (chartInstance != null) { stream = chartInstance.GetImage(); } else { MapInstance mapInstance = source.Instance as MapInstance; if (mapInstance != null) { stream = mapInstance.GetImage(); } } } if (stream != null) { ImageConsolidation imageConsolidation = pageContext.ImageConsolidation; imageConsolidation.AppendImage(stream); if (imageConsolidation.CurrentOffset >= imageConsolidation.IgnoreOffsetTill + 1 && imageConsolidation.ImageInfos.Count > 0) { m_itemFound = true; } } break; } default: FindTextBox(pageItem as TextBox, pageContext); break; } return(true); }
private bool AutoSizeImage(PageContext pageContext, ImageInstance imageInstance, out System.Drawing.Image gdiImage) { gdiImage = null; bool result = false; AutosizeImageProps autosizeImageProps = null; this.m_streamName = imageInstance.StreamName; if (this.m_streamName != null) { Hashtable hashtable = pageContext.AutoSizeSharedImages; if (hashtable != null) { autosizeImageProps = (AutosizeImageProps)hashtable[this.m_streamName]; if (autosizeImageProps != null) { this.GetPaddings(pageContext); return(autosizeImageProps.InvalidImage); } } autosizeImageProps = new AutosizeImageProps(); if (hashtable == null) { hashtable = (pageContext.AutoSizeSharedImages = new Hashtable()); } hashtable.Add(this.m_streamName, autosizeImageProps); } else { autosizeImageProps = new AutosizeImageProps(); } byte[] array = imageInstance.ImageData; if (array != null) { try { MemoryStream stream = new MemoryStream(array, false); gdiImage = System.Drawing.Image.FromStream(stream); if (gdiImage != null) { ((Bitmap)gdiImage).SetResolution((float)pageContext.DpiX, (float)pageContext.DpiY); } } catch { array = null; } } if (array == null) { gdiImage = (Bitmap)HPBProcessing.HPBResourceManager.GetObject("InvalidImage"); result = true; autosizeImageProps.InvalidImage = true; } if (gdiImage != null) { this.GetPaddings(pageContext); autosizeImageProps.Width = gdiImage.Width; autosizeImageProps.Height = gdiImage.Height; } return(result); }
public Result Execute( ExternalCommandData commandData, ref string message, ElementSet elements) { UIApplication uiapp = commandData.Application; UIDocument uidoc = uiapp.ActiveUIDocument; Application app = uiapp.Application; Document doc = uidoc.Document; string Path = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments); string ImageFileName = "GitHub\\TokyoAECIndustryDevGroup-Revit\\TokyoAECDev.extension\\TokyoAECDev.tab\\cstest.panel\\OgreCall.pushbutton\\Image\\Ogre.jpg"; string ImagePath = Path + "\\" + ImageFileName; ImagePlacementOptions Opt = new ImagePlacementOptions(); // Create View ViewSheet vs = null; using (Transaction tx = new Transaction(doc)) { tx.Start("Create View"); vs = ViewSheet.Create(doc, ElementId.InvalidElementId); vs.Name = "Ogre"; ImageType IT = ImageType.Create(doc, ImagePath); ImageInstance ImageonSheet = ImageInstance.Create(doc, vs, IT.Id, Opt); Guid schemaGuid = new Guid("67DA32DE-E851-4DAD-B5EA-5450897DBFF0"); Schema schema = Schema.Lookup(schemaGuid); if (schema == null) { SchemaBuilder schemaBuilder = new SchemaBuilder(schemaGuid); schemaBuilder.SetReadAccessLevel(AccessLevel.Public); schemaBuilder.SetWriteAccessLevel(AccessLevel.Public); schemaBuilder.SetVendorId("TokyoAECIndustryDevGroup"); schemaBuilder.SetSchemaName("OgreSample"); schemaBuilder.SetDocumentation("Sheet & ImageInstance ElementId"); FieldBuilder sheetBuilder = schemaBuilder.AddSimpleField("CreatedSheet", typeof(ElementId)); sheetBuilder.SetDocumentation("Sheet ElementId"); FieldBuilder imageBuilder = schemaBuilder.AddSimpleField("CreatedImage", typeof(ElementId)); imageBuilder.SetDocumentation("Sheet ElementId"); schema = schemaBuilder.Finish(); } DataStorage createdData = DataStorage.Create(vs.Document); Entity entity = new Entity(schema); Field sheetfield = schema.GetField("CreatedSheet"); entity.Set <ElementId>(sheetfield, vs.Id, DisplayUnitType.DUT_UNDEFINED); Field imagefield = schema.GetField("CreatedImage"); entity.Set <ElementId>(imagefield, ImageonSheet.Id, DisplayUnitType.DUT_UNDEFINED); createdData.SetEntity(entity); tx.Commit(); } if (vs != null) { uidoc.ActiveView = (View)vs; } return(Result.Succeeded); }
private bool AutoSizeImage(PageContext pageContext, ImageInstance imageInstance, out System.Drawing.Image gdiImage) { gdiImage = null; if (!pageContext.MeasureItems) { return(false); } if (((Microsoft.ReportingServices.OnDemandReportRendering.Image)m_source).Sizing != 0) { return(false); } bool result = false; AutosizeImageProps autosizeImageProps = null; string streamName = imageInstance.StreamName; if (streamName != null) { Hashtable hashtable = pageContext.AutoSizeSharedImages; if (hashtable != null) { autosizeImageProps = (AutosizeImageProps)hashtable[streamName]; if (autosizeImageProps != null) { ResizeImage(pageContext, autosizeImageProps.Width, autosizeImageProps.Height); return(autosizeImageProps.InvalidImage); } } autosizeImageProps = new AutosizeImageProps(); if (hashtable == null) { hashtable = (pageContext.AutoSizeSharedImages = new Hashtable()); } hashtable.Add(streamName, autosizeImageProps); } else { autosizeImageProps = new AutosizeImageProps(); } byte[] array = imageInstance.ImageData; if (array != null) { try { MemoryStream stream = new MemoryStream(array, writable: false); gdiImage = System.Drawing.Image.FromStream(stream); if (gdiImage != null) { ((Bitmap)gdiImage).SetResolution(pageContext.DpiX, pageContext.DpiY); } } catch { array = null; if (gdiImage != null) { gdiImage.Dispose(); gdiImage = null; } } } if (array == null) { gdiImage = (Bitmap)SPBProcessing.SPBResourceManager.GetObject("InvalidImage"); result = true; autosizeImageProps.InvalidImage = true; } if (gdiImage != null) { ResizeImage(pageContext, gdiImage.Width, gdiImage.Height); autosizeImageProps.Width = gdiImage.Width; autosizeImageProps.Height = gdiImage.Height; } return(result); }
public static ReportItem CreateItem(string uniqueName, AspNetCore.ReportingServices.ReportProcessing.ReportItem reportItemDef, ReportItemInstance reportItemInstance, RenderingContext renderingContext, NonComputedUniqueNames nonComputedUniqueNames) { if (reportItemDef == null) { return(null); } Global.Tracer.Assert(null != renderingContext); ReportItem reportItem = null; int intUniqueName = 0; NonComputedUniqueNames[] childrenNonComputedUniqueNames = null; if (reportItemInstance != null) { intUniqueName = reportItemInstance.UniqueName; } else if (nonComputedUniqueNames != null) { intUniqueName = nonComputedUniqueNames.UniqueName; childrenNonComputedUniqueNames = nonComputedUniqueNames.ChildrenUniqueNames; } if (reportItemDef is AspNetCore.ReportingServices.ReportProcessing.Line) { AspNetCore.ReportingServices.ReportProcessing.Line reportItemDef2 = (AspNetCore.ReportingServices.ReportProcessing.Line)reportItemDef; LineInstance reportItemInstance2 = (LineInstance)reportItemInstance; reportItem = new Line(uniqueName, intUniqueName, reportItemDef2, reportItemInstance2, renderingContext); } else if (reportItemDef is AspNetCore.ReportingServices.ReportProcessing.CheckBox) { AspNetCore.ReportingServices.ReportProcessing.CheckBox reportItemDef3 = (AspNetCore.ReportingServices.ReportProcessing.CheckBox)reportItemDef; CheckBoxInstance reportItemInstance3 = (CheckBoxInstance)reportItemInstance; reportItem = new CheckBox(uniqueName, intUniqueName, reportItemDef3, reportItemInstance3, renderingContext); } else if (reportItemDef is AspNetCore.ReportingServices.ReportProcessing.Image) { AspNetCore.ReportingServices.ReportProcessing.Image reportItemDef4 = (AspNetCore.ReportingServices.ReportProcessing.Image)reportItemDef; ImageInstance reportItemInstance4 = (ImageInstance)reportItemInstance; reportItem = new Image(uniqueName, intUniqueName, reportItemDef4, reportItemInstance4, renderingContext); } else if (reportItemDef is AspNetCore.ReportingServices.ReportProcessing.TextBox) { AspNetCore.ReportingServices.ReportProcessing.TextBox reportItemDef5 = (AspNetCore.ReportingServices.ReportProcessing.TextBox)reportItemDef; TextBoxInstance reportItemInstance5 = (TextBoxInstance)reportItemInstance; reportItem = new TextBox(uniqueName, intUniqueName, reportItemDef5, reportItemInstance5, renderingContext); } else if (reportItemDef is AspNetCore.ReportingServices.ReportProcessing.Rectangle) { AspNetCore.ReportingServices.ReportProcessing.Rectangle reportItemDef6 = (AspNetCore.ReportingServices.ReportProcessing.Rectangle)reportItemDef; RectangleInstance reportItemInstance6 = (RectangleInstance)reportItemInstance; reportItem = new Rectangle(uniqueName, intUniqueName, reportItemDef6, reportItemInstance6, renderingContext, childrenNonComputedUniqueNames); } else if (reportItemDef is AspNetCore.ReportingServices.ReportProcessing.ActiveXControl) { AspNetCore.ReportingServices.ReportProcessing.ActiveXControl reportItemDef7 = (AspNetCore.ReportingServices.ReportProcessing.ActiveXControl)reportItemDef; ActiveXControlInstance reportItemInstance7 = (ActiveXControlInstance)reportItemInstance; reportItem = new ActiveXControl(uniqueName, intUniqueName, reportItemDef7, reportItemInstance7, renderingContext); } else if (reportItemDef is AspNetCore.ReportingServices.ReportProcessing.SubReport) { AspNetCore.ReportingServices.ReportProcessing.SubReport subReport = (AspNetCore.ReportingServices.ReportProcessing.SubReport)reportItemDef; SubReportInstance subReportInstance = (SubReportInstance)reportItemInstance; bool processedWithError = false; Report innerReport; if (AspNetCore.ReportingServices.ReportProcessing.SubReport.Status.Retrieved != subReport.RetrievalStatus) { innerReport = null; processedWithError = true; } else { if (subReport.ReportContext == null && renderingContext.CurrentReportContext != null) { subReport.ReportContext = renderingContext.CurrentReportContext.GetSubreportContext(subReport.ReportPath); } ICatalogItemContext reportContext = subReport.ReportContext; RenderingContext renderingContext2 = new RenderingContext(renderingContext, subReport.Uri, subReport.Report.EmbeddedImages, subReport.Report.ImageStreamNames, reportContext); if (subReportInstance == null) { innerReport = new Report(subReport.Report, null, renderingContext2, subReport.ReportName, subReport.Description, null); } else if (subReportInstance.ReportInstance == null) { processedWithError = true; innerReport = new Report(subReport.Report, null, renderingContext2, subReport.ReportName, subReport.Description, null); } else { innerReport = new Report(subReport.Report, subReportInstance.ReportInstance, renderingContext2, subReport.ReportName, subReport.Description, null); } } reportItem = new SubReport(intUniqueName, subReport, subReportInstance, renderingContext, innerReport, processedWithError); } else if (reportItemDef is AspNetCore.ReportingServices.ReportProcessing.List) { AspNetCore.ReportingServices.ReportProcessing.List reportItemDef8 = (AspNetCore.ReportingServices.ReportProcessing.List)reportItemDef; ListInstance reportItemInstance8 = (ListInstance)reportItemInstance; reportItem = new List(intUniqueName, reportItemDef8, reportItemInstance8, renderingContext); } else if (reportItemDef is AspNetCore.ReportingServices.ReportProcessing.Matrix) { AspNetCore.ReportingServices.ReportProcessing.Matrix reportItemDef9 = (AspNetCore.ReportingServices.ReportProcessing.Matrix)reportItemDef; MatrixInstance reportItemInstance9 = (MatrixInstance)reportItemInstance; reportItem = new Matrix(intUniqueName, reportItemDef9, reportItemInstance9, renderingContext); } else if (reportItemDef is AspNetCore.ReportingServices.ReportProcessing.Table) { AspNetCore.ReportingServices.ReportProcessing.Table reportItemDef10 = (AspNetCore.ReportingServices.ReportProcessing.Table)reportItemDef; TableInstance reportItemInstance10 = (TableInstance)reportItemInstance; reportItem = new Table(intUniqueName, reportItemDef10, reportItemInstance10, renderingContext); } else if (reportItemDef is AspNetCore.ReportingServices.ReportProcessing.OWCChart) { AspNetCore.ReportingServices.ReportProcessing.OWCChart reportItemDef11 = (AspNetCore.ReportingServices.ReportProcessing.OWCChart)reportItemDef; OWCChartInstance reportItemInstance11 = (OWCChartInstance)reportItemInstance; reportItem = new OWCChart(intUniqueName, reportItemDef11, reportItemInstance11, renderingContext); } else if (reportItemDef is AspNetCore.ReportingServices.ReportProcessing.Chart) { AspNetCore.ReportingServices.ReportProcessing.Chart reportItemDef12 = (AspNetCore.ReportingServices.ReportProcessing.Chart)reportItemDef; ChartInstance reportItemInstance12 = (ChartInstance)reportItemInstance; reportItem = new Chart(intUniqueName, reportItemDef12, reportItemInstance12, renderingContext); } else if (reportItemDef is AspNetCore.ReportingServices.ReportProcessing.CustomReportItem) { AspNetCore.ReportingServices.ReportProcessing.CustomReportItem reportItemDef13 = (AspNetCore.ReportingServices.ReportProcessing.CustomReportItem)reportItemDef; CustomReportItemInstance reportItemInstance13 = (CustomReportItemInstance)reportItemInstance; reportItem = new CustomReportItem(uniqueName, intUniqueName, reportItemDef13, reportItemInstance13, renderingContext, childrenNonComputedUniqueNames); if (!renderingContext.NativeAllCRITypes && (renderingContext.NativeCRITypes == null || !renderingContext.NativeCRITypes.ContainsKey(((CustomReportItem)reportItem).Type))) { reportItem = ((CustomReportItem)reportItem).AltReportItem; } } return(reportItem); }
public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements) { Application app = commandData.Application.Application; UIDocument uidoc = commandData.Application.ActiveUIDocument; Document doc = uidoc.Document; string filename = "pastedImage" + "_" + DateTime.Now.ToString("yyyy-MM-dd HH.mm") + ".jpeg"; string path = ""; if (doc.IsModelInCloud || doc.IsDetached || doc.PathName == null) { path = Path.Combine(Path.GetTempPath(), filename); } else if(doc.IsWorkshared) { path = Path.Combine(Path.GetDirectoryName(doc.GetWorksharingCentralModelPath().CentralServerPath), "PastedImages", filename); } else { path = Path.Combine(Path.GetDirectoryName(doc.PathName), "PastedImages", filename); } Directory.CreateDirectory(Path.GetDirectoryName(path)); if (Clipboard.ContainsImage()) { Image image = (Image)Clipboard.GetDataObject().GetData(DataFormats.Bitmap); Debug.Print(path); image.Save(path, System.Drawing.Imaging.ImageFormat.Jpeg); } else { message = "No image on clipoboard"; return Result.Failed; } XYZ imageLocation = new XYZ(); try { imageLocation = uidoc.Selection.PickPoint("Pick insertion point (midpoint)"); } catch(Autodesk.Revit.Exceptions.OperationCanceledException) { message = "Command cancelled"; return Result.Cancelled; } using (Transaction t1 = new Transaction(doc, "paste image")) { t1.Start(); ImageTypeOptions opt = new ImageTypeOptions(path, false, ImageTypeSource.Import); ImagePlacementOptions pOpt = new ImagePlacementOptions(); pOpt.Location = imageLocation; pOpt.PlacementPoint = BoxPlacement.Center; ImageType imageType = ImageType.Create(doc, opt); ImageInstance.Create(doc, doc.ActiveView, imageType.Id, pOpt); t1.Commit(); } return Result.Succeeded; }
public void Dispose() { ImageInstance?.Dispose(); ImageStream?.Dispose(); }
private static DeclarationList CreateCurrentDeclarations() { DeclarationList declarationList = new DeclarationList(); int num = 1; declarationList[num++] = IDOwner.GetDeclaration(); declarationList[num++] = ReportItem.GetDeclaration(); num++; declarationList[num++] = Report.GetDeclaration(); declarationList[num++] = PageSection.GetDeclaration(); declarationList[num++] = Line.GetDeclaration(); declarationList[num++] = Rectangle.GetDeclaration(); declarationList[num++] = Image.GetDeclaration(); num++; declarationList[num++] = CheckBox.GetDeclaration(); declarationList[num++] = TextBox.GetDeclaration(); declarationList[num++] = SubReport.GetDeclaration(); declarationList[num++] = ActiveXControl.GetDeclaration(); declarationList[num++] = DataRegion.GetDeclaration(); num++; declarationList[num++] = ReportHierarchyNode.GetDeclaration(); declarationList[num++] = Grouping.GetDeclaration(); declarationList[num++] = Sorting.GetDeclaration(); declarationList[num++] = List.GetDeclaration(); declarationList[num++] = Pivot.GetDeclaration(); declarationList[num++] = Matrix.GetDeclaration(); declarationList[num++] = PivotHeading.GetDeclaration(); declarationList[num++] = MatrixHeading.GetDeclaration(); declarationList[num++] = MatrixColumn.GetDeclaration(); num++; declarationList[num++] = MatrixRow.GetDeclaration(); num++; declarationList[num++] = Subtotal.GetDeclaration(); declarationList[num++] = Table.GetDeclaration(); declarationList[num++] = TableColumn.GetDeclaration(); num++; declarationList[num++] = TableGroup.GetDeclaration(); declarationList[num++] = TableRow.GetDeclaration(); num++; declarationList[num++] = OWCChart.GetDeclaration(); declarationList[num++] = ChartColumn.GetDeclaration(); num++; declarationList[num++] = ReportItemCollection.GetDeclaration(); declarationList[num++] = ReportItemIndexer.GetDeclaration(); num++; declarationList[num++] = Style.GetDeclaration(); num++; declarationList[num++] = AttributeInfo.GetDeclaration(); declarationList[num++] = Visibility.GetDeclaration(); declarationList[num++] = ExpressionInfo.GetDeclaration(); num++; declarationList[num++] = DataAggregateInfo.GetDeclaration(); num++; declarationList[num++] = RunningValueInfo.GetDeclaration(); num++; num++; declarationList[num++] = Filter.GetDeclaration(); num++; declarationList[num++] = DataSource.GetDeclaration(); num++; declarationList[num++] = DataSet.GetDeclaration(); num++; declarationList[num++] = ReportQuery.GetDeclaration(); declarationList[num++] = Field.GetDeclaration(); num++; declarationList[num++] = ParameterValue.GetDeclaration(); num++; num++; num++; num++; declarationList[num++] = ReportSnapshot.GetDeclaration(); declarationList[num++] = SenderInformation.GetDeclaration(); declarationList[num++] = InstanceInfo.GetDeclaration(); declarationList[num++] = ReceiverInformation.GetDeclaration(); declarationList[num++] = InstanceInfo.GetDeclaration(); declarationList[num++] = DocumentMapNode.GetDeclaration(); declarationList[num++] = InfoBase.GetDeclaration(); declarationList[num++] = OffsetInfo.GetDeclaration(); declarationList[num++] = InstanceInfo.GetDeclaration(); declarationList[num++] = ReportItemInstanceInfo.GetDeclaration(); declarationList[num++] = ReportInstanceInfo.GetDeclaration(); declarationList[num++] = ReportItemColInstanceInfo.GetDeclaration(); declarationList[num++] = LineInstanceInfo.GetDeclaration(); declarationList[num++] = TextBoxInstanceInfo.GetDeclaration(); declarationList[num++] = RectangleInstanceInfo.GetDeclaration(); declarationList[num++] = CheckBoxInstanceInfo.GetDeclaration(); declarationList[num++] = ImageInstanceInfo.GetDeclaration(); declarationList[num++] = SubReportInstanceInfo.GetDeclaration(); declarationList[num++] = ActiveXControlInstanceInfo.GetDeclaration(); declarationList[num++] = ListInstanceInfo.GetDeclaration(); declarationList[num++] = ListContentInstanceInfo.GetDeclaration(); declarationList[num++] = MatrixInstanceInfo.GetDeclaration(); declarationList[num++] = MatrixHeadingInstanceInfo.GetDeclaration(); declarationList[num++] = MatrixCellInstanceInfo.GetDeclaration(); declarationList[num++] = TableInstanceInfo.GetDeclaration(); declarationList[num++] = TableGroupInstanceInfo.GetDeclaration(); declarationList[num++] = TableRowInstanceInfo.GetDeclaration(); declarationList[num++] = OWCChartInstanceInfo.GetDeclaration(); declarationList[num++] = ChartInstanceInfo.GetDeclaration(); declarationList[num++] = NonComputedUniqueNames.GetDeclaration(); declarationList[num++] = InstanceInfoOwner.GetDeclaration(); declarationList[num++] = ReportItemInstance.GetDeclaration(); num++; declarationList[num++] = ReportInstance.GetDeclaration(); declarationList[num++] = ReportItemColInstance.GetDeclaration(); declarationList[num++] = LineInstance.GetDeclaration(); declarationList[num++] = TextBoxInstance.GetDeclaration(); declarationList[num++] = RectangleInstance.GetDeclaration(); declarationList[num++] = CheckBoxInstance.GetDeclaration(); declarationList[num++] = ImageInstance.GetDeclaration(); declarationList[num++] = SubReportInstance.GetDeclaration(); declarationList[num++] = ActiveXControlInstance.GetDeclaration(); declarationList[num++] = ListInstance.GetDeclaration(); declarationList[num++] = ListContentInstance.GetDeclaration(); num++; declarationList[num++] = MatrixInstance.GetDeclaration(); declarationList[num++] = MatrixHeadingInstance.GetDeclaration(); num++; declarationList[num++] = MatrixCellInstance.GetDeclaration(); num++; num++; declarationList[num++] = TableInstance.GetDeclaration(); declarationList[num++] = TableRowInstance.GetDeclaration(); declarationList[num++] = TableColumnInstance.GetDeclaration(); declarationList[num++] = TableGroupInstance.GetDeclaration(); num++; declarationList[num++] = OWCChartInstance.GetDeclaration(); declarationList[num++] = ParameterInfo.GetDeclaration(); num++; num++; num++; declarationList[num++] = InstanceInfo.GetDeclaration(); num++; declarationList[num++] = RecordSetInfo.GetDeclaration(); declarationList[num++] = RecordRow.GetDeclaration(); declarationList[num++] = RecordField.GetDeclaration(); declarationList[num++] = ValidValue.GetDeclaration(); num++; declarationList[num++] = ParameterDataSource.GetDeclaration(); declarationList[num++] = ParameterDef.GetDeclaration(); num++; declarationList[num++] = ParameterBase.GetDeclaration(); num++; declarationList[num++] = ProcessingMessage.GetDeclaration(); declarationList[num++] = MatrixSubtotalHeadingInstanceInfo.GetDeclaration(); declarationList[num++] = MatrixSubtotalCellInstance.GetDeclaration(); declarationList[num++] = CodeClass.GetDeclaration(); num++; declarationList[num++] = TableDetail.GetDeclaration(); declarationList[num++] = TableDetailInstance.GetDeclaration(); num++; declarationList[num++] = TableDetailInstanceInfo.GetDeclaration(); num++; declarationList[num++] = Action.GetDeclaration(); declarationList[num++] = ActionInstance.GetDeclaration(); declarationList[num++] = Chart.GetDeclaration(); declarationList[num++] = ChartHeading.GetDeclaration(); declarationList[num++] = ChartDataPoint.GetDeclaration(); num++; declarationList[num++] = MultiChart.GetDeclaration(); declarationList[num++] = MultiChartInstance.GetDeclaration(); num++; declarationList[num++] = Axis.GetDeclaration(); declarationList[num++] = AxisInstance.GetDeclaration(); declarationList[num++] = ChartTitle.GetDeclaration(); declarationList[num++] = ChartTitleInstance.GetDeclaration(); declarationList[num++] = ThreeDProperties.GetDeclaration(); declarationList[num++] = PlotArea.GetDeclaration(); declarationList[num++] = Legend.GetDeclaration(); declarationList[num++] = GridLines.GetDeclaration(); declarationList[num++] = ChartDataLabel.GetDeclaration(); declarationList[num++] = ChartInstance.GetDeclaration(); declarationList[num++] = ChartHeadingInstance.GetDeclaration(); declarationList[num++] = ChartHeadingInstanceInfo.GetDeclaration(); num++; declarationList[num++] = ChartDataPointInstance.GetDeclaration(); declarationList[num++] = ChartDataPointInstanceInfo.GetDeclaration(); num++; num++; declarationList[num++] = RenderingPagesRanges.GetDeclaration(); num++; declarationList[num++] = IntermediateFormatVersion.GetDeclaration(); declarationList[num++] = ImageInfo.GetDeclaration(); declarationList[num++] = ActionItem.GetDeclaration(); declarationList[num++] = ActionItemInstance.GetDeclaration(); num++; num++; declarationList[num++] = DataValue.GetDeclaration(); declarationList[num++] = DataValueInstance.GetDeclaration(); num++; num++; declarationList[num++] = Tablix.GetDeclaration(); declarationList[num++] = TablixHeading.GetDeclaration(); declarationList[num++] = CustomReportItem.GetDeclaration(); declarationList[num++] = CustomReportItemInstance.GetDeclaration(); declarationList[num++] = CustomReportItemHeading.GetDeclaration(); declarationList[num++] = CustomReportItemHeadingInstance.GetDeclaration(); num++; num++; num++; num++; declarationList[num++] = CustomReportItemCellInstance.GetDeclaration(); num++; num++; declarationList[num++] = DataValueCRIList.GetDeclaration(); declarationList[num++] = BookmarkInformation.GetDeclaration(); declarationList[num++] = InstanceInfo.GetDeclaration(); declarationList[num++] = DrillthroughInformation.GetDeclaration(); declarationList[num++] = InstanceInfo.GetDeclaration(); num++; declarationList[num++] = CustomReportItemInstanceInfo.GetDeclaration(); declarationList[num++] = ImageMapAreaInstanceList.GetDeclaration(); declarationList[num++] = ImageMapAreaInstance.GetDeclaration(); num++; declarationList[num++] = InstanceInfo.GetDeclaration(); declarationList[num++] = SortFilterEventInfo.GetDeclaration(); declarationList[num++] = EndUserSort.GetDeclaration(); num++; num++; declarationList[num++] = RecordSetPropertyNames.GetDeclaration(); num++; num++; num++; declarationList[num++] = PageSectionInstance.GetDeclaration(); num++; declarationList[num++] = PageSectionInstanceInfo.GetDeclaration(); declarationList[num++] = SimpleTextBoxInstanceInfo.GetDeclaration(); declarationList[num++] = ScopeLookupTable.GetDeclaration(); num++; declarationList[num++] = ReportDrillthroughInfo.GetDeclaration(); declarationList[num++] = InstanceInfo.GetDeclaration(); Global.Tracer.Assert(declarationList.Count == num, "(current.Count == index)"); return(declarationList); }
private bool AutoSizeImage(PageContext pageContext, ImageInstance imageInstance, out System.Drawing.Image gdiImage) { gdiImage = null; bool result = false; AutosizeImageProps autosizeImageProps = null; m_streamName = imageInstance.StreamName; if (m_streamName != null) { Hashtable hashtable = pageContext.AutoSizeSharedImages; if (hashtable != null) { autosizeImageProps = (AutosizeImageProps)hashtable[m_streamName]; if (autosizeImageProps != null) { GetPaddings(pageContext); return(autosizeImageProps.InvalidImage); } } autosizeImageProps = new AutosizeImageProps(); if (hashtable == null) { hashtable = (pageContext.AutoSizeSharedImages = new Hashtable()); } hashtable.Add(m_streamName, autosizeImageProps); } else { autosizeImageProps = new AutosizeImageProps(); } byte[] array = imageInstance.ImageData; if (array != null) { try { MemoryStream stream = new MemoryStream(array, writable: false); gdiImage = System.Drawing.Image.FromStream(stream); if (gdiImage != null) { ((Bitmap)gdiImage).SetResolution(pageContext.DpiX, pageContext.DpiY); } } catch { array = null; } } if (array == null) { gdiImage = Microsoft.ReportingServices.InvalidImage.Image; result = true; autosizeImageProps.InvalidImage = true; } if (gdiImage != null) { GetPaddings(pageContext); autosizeImageProps.Width = gdiImage.Width; autosizeImageProps.Height = gdiImage.Height; } return(result); }