개정판 f1f822e9
issue #00000 svg 기능 수정
Change-Id: Ic1575964db1f861ca637c7073dfa382fee4bbcd4
KCOM/Common/Converter/SvgImageConverter.cs | ||
---|---|---|
1 |
using Svg2Xaml; |
|
1 |
using SharpVectors.Converters; |
|
2 |
using SharpVectors.Dom.Utils; |
|
2 | 3 |
using System; |
3 | 4 |
using System.Collections.Generic; |
5 |
using System.ComponentModel; |
|
4 | 6 |
using System.Globalization; |
7 |
using System.IO; |
|
5 | 8 |
using System.Linq; |
6 | 9 |
using System.Text; |
7 | 10 |
using System.Threading.Tasks; |
8 | 11 |
using System.Windows.Controls; |
9 | 12 |
using System.Windows.Data; |
13 |
using System.Windows.Markup; |
|
10 | 14 |
using System.Windows.Media; |
11 | 15 |
using System.Windows.Media.Imaging; |
12 | 16 |
|
13 | 17 |
namespace KCOM.Common.Converter |
14 | 18 |
{ |
15 |
class SvgImageConverter : IValueConverter
|
|
19 |
public class SvgImageConverter : SvgImageBase, IValueConverter
|
|
16 | 20 |
{ |
21 |
#region Private Fields |
|
22 |
|
|
23 |
private Uri _baseUri; |
|
24 |
private readonly UriTypeConverter _uriConverter; |
|
25 |
|
|
26 |
#endregion |
|
27 |
|
|
28 |
public SvgImageConverter() |
|
29 |
{ |
|
30 |
_uriConverter = new UriTypeConverter(); |
|
31 |
} |
|
17 | 32 |
|
18 | 33 |
public object Convert(object value, Type targetType, object parameter, CultureInfo culture) |
19 | 34 |
{ |
20 |
if(value == null)
|
|
35 |
try
|
|
21 | 36 |
{ |
22 |
return null; |
|
23 |
} |
|
37 |
if (string.IsNullOrWhiteSpace(_appName)) |
|
38 |
{ |
|
39 |
if (this.IsDesignMode() || LicenseManager.UsageMode == LicenseUsageMode.Designtime) |
|
40 |
{ |
|
41 |
this.GetAppName(); |
|
42 |
} |
|
43 |
} |
|
24 | 44 |
|
25 |
//var uri = string.Format("pack://application:,,,/images/{0}{1}.png", values); // for example |
|
26 |
var uri = value.ToString(); |
|
45 |
Uri inputUri = null; |
|
46 |
if (parameter != null) |
|
47 |
{ |
|
48 |
inputUri = this.ResolveUri(parameter.ToString()); |
|
49 |
} |
|
50 |
else if (value != null) |
|
51 |
{ |
|
52 |
inputUri = _uriConverter.ConvertFrom(value) as Uri; |
|
53 |
if (inputUri == null) |
|
54 |
{ |
|
55 |
inputUri = this.ResolveUri(value.ToString()); |
|
56 |
} |
|
57 |
else if (!inputUri.IsAbsoluteUri) |
|
58 |
{ |
|
59 |
inputUri = this.ResolveUri(value.ToString()); |
|
60 |
} |
|
61 |
} |
|
27 | 62 |
|
28 |
Image img = new Image(); |
|
29 |
if (uri.Contains(".svg")) |
|
30 |
{ |
|
31 |
byte[] imageData = null; |
|
32 |
DrawingImage image = null; |
|
33 |
using (System.Net.WebClient web = new System.Net.WebClient()) |
|
63 |
if (inputUri == null) |
|
34 | 64 |
{ |
35 |
imageData = web.DownloadData(new Uri(uri)); |
|
36 |
System.IO.Stream stream = new System.IO.MemoryStream(imageData); |
|
37 |
image = SvgReader.Load(stream); |
|
65 |
return null; |
|
66 |
} |
|
67 |
var svgSource = inputUri.IsAbsoluteUri ? inputUri : new Uri(_baseUri, inputUri); |
|
68 |
|
|
69 |
if (svgSource.ToString().EndsWith(".svg")) |
|
70 |
{ |
|
71 |
return this.GetImage(svgSource); |
|
72 |
} |
|
73 |
else |
|
74 |
{ |
|
75 |
return new BitmapImage(new Uri(value.ToString())); |
|
38 | 76 |
} |
39 |
img.Source = image; |
|
40 | 77 |
|
41 | 78 |
} |
42 |
else
|
|
79 |
catch
|
|
43 | 80 |
{ |
44 |
img.Source = new BitmapImage(new Uri(uri));
|
|
81 |
//throw; #82
|
|
45 | 82 |
} |
46 |
|
|
47 |
//return new BitmapImage(new Uri(uri)); |
|
48 |
return img.Source; |
|
83 |
return null; |
|
49 | 84 |
} |
50 | 85 |
|
51 | 86 |
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) |
52 | 87 |
{ |
53 | 88 |
throw new NotImplementedException(); |
54 | 89 |
} |
90 |
|
|
91 |
public override object ProvideValue(IServiceProvider serviceProvider) |
|
92 |
{ |
|
93 |
var uriContext = serviceProvider.GetService(typeof(IUriContext)) as IUriContext; |
|
94 |
if (uriContext != null) |
|
95 |
{ |
|
96 |
_baseUri = uriContext.BaseUri; |
|
97 |
} |
|
98 |
|
|
99 |
return this; |
|
100 |
} |
|
101 |
|
|
102 |
|
|
103 |
#region Private Methods |
|
104 |
|
|
105 |
/// <summary> |
|
106 |
/// Converts the SVG source file to <see cref="Uri"/> |
|
107 |
/// </summary> |
|
108 |
/// <param name="inputParameter"> |
|
109 |
/// Object that can provide services for the markup extension. |
|
110 |
/// </param> |
|
111 |
/// <returns> |
|
112 |
/// Returns the valid <see cref="Uri"/> of the SVG source path if |
|
113 |
/// successful; otherwise, it returns <see langword="null"/>. |
|
114 |
/// </returns> |
|
115 |
private Uri ResolveUri(string inputParameter) |
|
116 |
{ |
|
117 |
if (string.IsNullOrWhiteSpace(inputParameter)) |
|
118 |
{ |
|
119 |
return null; |
|
120 |
} |
|
121 |
if (string.IsNullOrWhiteSpace(_appName)) |
|
122 |
{ |
|
123 |
this.GetAppName(); |
|
124 |
} |
|
125 |
var comparer = StringComparison.OrdinalIgnoreCase; |
|
126 |
|
|
127 |
Uri svgSource; |
|
128 |
if (Uri.TryCreate(inputParameter, UriKind.RelativeOrAbsolute, out svgSource)) |
|
129 |
{ |
|
130 |
if (svgSource.IsAbsoluteUri) |
|
131 |
{ |
|
132 |
return svgSource; |
|
133 |
} |
|
134 |
// Try getting a local file in the same directory.... |
|
135 |
string svgPath = inputParameter; |
|
136 |
if (inputParameter[0] == '\\' || inputParameter[0] == '/') |
|
137 |
{ |
|
138 |
svgPath = inputParameter.Substring(1); |
|
139 |
} |
|
140 |
svgPath = svgPath.Replace('/', '\\'); |
|
141 |
|
|
142 |
var assembly = this.GetExecutingAssembly(); |
|
143 |
if (assembly != null) |
|
144 |
{ |
|
145 |
string localFile = PathUtils.Combine(assembly, svgPath); |
|
146 |
|
|
147 |
if (File.Exists(localFile)) |
|
148 |
{ |
|
149 |
return new Uri(localFile); |
|
150 |
} |
|
151 |
} |
|
152 |
|
|
153 |
// Try getting it as resource file... |
|
154 |
var inputUri = _uriConverter.ConvertFrom(inputParameter) as Uri; |
|
155 |
if (inputUri != null) |
|
156 |
{ |
|
157 |
if (inputUri.IsAbsoluteUri) |
|
158 |
{ |
|
159 |
return inputUri; |
|
160 |
} |
|
161 |
if (_baseUri != null) |
|
162 |
{ |
|
163 |
var validUri = new Uri(_baseUri, inputUri); |
|
164 |
if (validUri.IsAbsoluteUri) |
|
165 |
{ |
|
166 |
if (validUri.IsFile && File.Exists(validUri.LocalPath)) |
|
167 |
{ |
|
168 |
return validUri; |
|
169 |
} |
|
170 |
} |
|
171 |
} |
|
172 |
} |
|
173 |
|
|
174 |
string asmName = _appName; |
|
175 |
if (string.IsNullOrWhiteSpace(asmName) && assembly != null) |
|
176 |
{ |
|
177 |
// It should not be the SharpVectors.Converters.Wpf.dll, which contains this extension... |
|
178 |
string tempName = assembly.GetName().Name; |
|
179 |
if (!string.Equals("SharpVectors.Converters.Wpf", tempName, comparer) |
|
180 |
&& !string.Equals("WpfSurface", tempName, comparer)) |
|
181 |
{ |
|
182 |
asmName = tempName; |
|
183 |
} |
|
184 |
} |
|
185 |
|
|
186 |
svgPath = inputParameter; |
|
187 |
if (inputParameter.StartsWith("/", comparer)) |
|
188 |
{ |
|
189 |
svgPath = svgPath.TrimStart('/'); |
|
190 |
} |
|
191 |
|
|
192 |
// A little hack to display preview in design mode |
|
193 |
if (this.IsDesignMode() && !string.IsNullOrWhiteSpace(_appName)) |
|
194 |
{ |
|
195 |
//string uriDesign = string.Format("/{0};component/{1}", _appName, svgPath); |
|
196 |
//return new Uri(uriDesign, UriKind.Relative); |
|
197 |
|
|
198 |
// The relative path is not working with the Converter... |
|
199 |
string uriDesign = string.Format("pack://application:,,,/{0};component/{1}", |
|
200 |
_appName, svgPath); |
|
201 |
|
|
202 |
return new Uri(uriDesign); |
|
203 |
} |
|
204 |
|
|
205 |
string uriString = string.Format("pack://application:,,,/{0};component/{1}", |
|
206 |
asmName, svgPath); |
|
207 |
|
|
208 |
return new Uri(uriString); |
|
209 |
} |
|
210 |
|
|
211 |
return null; |
|
212 |
} |
|
213 |
|
|
214 |
#endregion |
|
55 | 215 |
} |
56 | 216 |
} |
KCOM/Controls/Symbol.xaml | ||
---|---|---|
1 |
<UserControl x:Class="KCOM.Controls.Symbol" |
|
2 |
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" |
|
3 |
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" |
|
4 |
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" |
|
5 |
xmlns:common="clr-namespace:KCOM.Common" |
|
6 |
xmlns:d="http://schemas.microsoft.com/expression/blend/2008" |
|
7 |
xmlns:WrapPanel ="clr-namespace:KCOM.WrapPanel" |
|
8 |
xmlns:local="clr-namespace:KCOM.Controls" |
|
9 |
xmlns:ZoomAndPan="clr-namespace:ZoomAndPan;assembly=ZoomAndPan" |
|
10 |
xmlns:telerikDragDrop="clr-namespace:Telerik.Windows.DragDrop;assembly=Telerik.Windows.Controls" |
|
11 |
xmlns:dragDrop="clr-namespace:Telerik.Windows.Controls.DragDrop;assembly=Telerik.Windows.Controls" |
|
12 |
xmlns:telerik="http://schemas.telerik.com/2008/xaml/presentation" |
|
13 |
xmlns:converter="clr-namespace:KCOM.Common.Converter" |
|
14 |
xmlns:Behaviors="clr-namespace:KCOM.Behaviors" |
|
15 |
mc:Ignorable="d" Background="#f5f5f5" |
|
16 |
d:DesignHeight="900" d:DesignWidth="300"> |
|
1 |
<UserControl |
|
2 |
x:Class="KCOM.Controls.Symbol" |
|
3 |
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" |
|
4 |
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" |
|
5 |
xmlns:Behaviors="clr-namespace:KCOM.Behaviors" |
|
6 |
xmlns:WrapPanel="[WrapPanel ]clr-namespace:KCOM.WrapPanel" |
|
7 |
xmlns:ZoomAndPan="clr-namespace:ZoomAndPan;assembly=ZoomAndPan" |
|
8 |
xmlns:common="clr-namespace:KCOM.Common" |
|
9 |
xmlns:converter="clr-namespace:KCOM.Common.Converter" |
|
10 |
xmlns:d="http://schemas.microsoft.com/expression/blend/2008" |
|
11 |
xmlns:dragDrop="clr-namespace:Telerik.Windows.Controls.DragDrop;assembly=Telerik.Windows.Controls" |
|
12 |
xmlns:local="clr-namespace:KCOM.Controls" |
|
13 |
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" |
|
14 |
xmlns:telerik="http://schemas.telerik.com/2008/xaml/presentation" |
|
15 |
xmlns:telerikDragDrop="clr-namespace:Telerik.Windows.DragDrop;assembly=Telerik.Windows.Controls" |
|
16 |
d:DesignHeight="900" |
|
17 |
d:DesignWidth="300" |
|
18 |
Background="#f5f5f5" |
|
19 |
mc:Ignorable="d"> |
|
17 | 20 |
<UserControl.Resources> |
18 |
<converter:SvgImageConverter x:Key="SvgImageConverter"/> |
|
19 |
<Style x:Key="CustomDragVisualStyle2" TargetType="telerik:DragVisual" BasedOn="{StaticResource DragVisualStyle}"> |
|
21 |
<converter:SvgImageConverter x:Key="SvgImageConverter" /> |
|
22 |
<Style |
|
23 |
x:Key="CustomDragVisualStyle2" |
|
24 |
BasedOn="{StaticResource DragVisualStyle}" |
|
25 |
TargetType="telerik:DragVisual"> |
|
20 | 26 |
<Setter Property="Background" Value="Transparent" /> |
21 | 27 |
<Setter Property="BorderThickness" Value="0" /> |
22 |
<Setter Property="Margin" Value="0" />
|
|
23 |
<Setter Property="Padding" Value="0" />
|
|
28 |
<Setter Property="Margin" Value="0" /> |
|
29 |
<Setter Property="Padding" Value="0" /> |
|
24 | 30 |
</Style> |
25 |
<Style TargetType="telerik:RadListBoxItem" BasedOn="{StaticResource RadListBoxItemStyle}">
|
|
26 |
<Setter Property="telerik:DragDropManager.AllowCapturedDrag" Value="True"/> |
|
31 |
<Style BasedOn="{StaticResource RadListBoxItemStyle}" TargetType="telerik:RadListBoxItem">
|
|
32 |
<Setter Property="telerik:DragDropManager.AllowCapturedDrag" Value="True" />
|
|
27 | 33 |
<!--<Setter Property="telerik:TouchManager.DragStartTrigger" Value="TapHoldAndMove"/>--> |
28 | 34 |
</Style> |
29 | 35 |
<DataTemplate x:Key="SymbolTemplate_Private"> |
30 |
<StackPanel MouseLeftButtonDown="Move_Symbol" AllowDrop="False" MouseLeave="StackPanel_MouseLeave" MouseUp="StackPanel_MouseUp" ToolTipService.ToolTip="{Binding Name}"> |
|
36 |
<StackPanel |
|
37 |
AllowDrop="False" |
|
38 |
MouseLeave="StackPanel_MouseLeave" |
|
39 |
MouseLeftButtonDown="Move_Symbol" |
|
40 |
MouseUp="StackPanel_MouseUp" |
|
41 |
ToolTipService.ToolTip="{Binding Name}"> |
|
31 | 42 |
<Grid> |
32 | 43 |
<StackPanel> |
33 | 44 |
<!--<Border Background="#FF1FA3EB">--> |
34 | 45 |
<Border Background="#FF2A579A"> |
35 |
<TextBox MaxWidth="200" |
|
36 |
Background="#FF2A579A" |
|
37 |
HorizontalAlignment="Center" |
|
38 |
VerticalAlignment="Center" |
|
39 |
Foreground="White" |
|
40 |
Text="{Binding Name}" |
|
41 |
x:Name="symbolName" |
|
42 |
BorderBrush="#FF2A579A" |
|
43 |
KeyDown="OnKeyDownHandler"/> |
|
46 |
<TextBox |
|
47 |
x:Name="symbolName" |
|
48 |
MaxWidth="200" |
|
49 |
HorizontalAlignment="Center" |
|
50 |
VerticalAlignment="Center" |
|
51 |
Background="#FF2A579A" |
|
52 |
BorderBrush="#FF2A579A" |
|
53 |
Foreground="White" |
|
54 |
KeyDown="OnKeyDownHandler" |
|
55 |
Text="{Binding Name}" /> |
|
44 | 56 |
</Border> |
45 |
<Image Width="200" |
|
57 |
<Image |
|
58 |
x:Name="symbolImage" |
|
59 |
Width="200" |
|
46 | 60 |
Height="64" |
47 | 61 |
Margin="3" |
48 | 62 |
HorizontalAlignment="Center" |
49 |
Source="{Binding ImageUri,Converter={StaticResource SvgImageConverter},UpdateSourceTrigger=PropertyChanged}" |
|
50 |
x:Name="symbolImage"/> |
|
63 |
Source="{Binding ImageUri, Converter={StaticResource SvgImageConverter}, UpdateSourceTrigger=PropertyChanged}" /> |
|
51 | 64 |
</StackPanel> |
52 |
<Rectangle Opacity="0.7" |
|
53 |
Stroke="#ff6c6d6d" |
|
54 |
StrokeThickness="1" /> |
|
65 |
<Rectangle |
|
66 |
Opacity="0.7" |
|
67 |
Stroke="#ff6c6d6d" |
|
68 |
StrokeThickness="1" /> |
|
55 | 69 |
</Grid> |
56 | 70 |
</StackPanel> |
57 | 71 |
</DataTemplate> |
58 | 72 |
</UserControl.Resources> |
59 |
<Grid Margin="10"> |
|
60 |
<telerik:RadTabControl BorderThickness="0" x:Name="RadTab" telerik:StyleManager.Theme="Office2016" HeaderBackground="#f5f5f5" FontSize="10" HorizontalAlignment="Stretch" HorizontalContentAlignment="Stretch" |
|
61 |
ScrollViewer.HorizontalScrollBarVisibility ="Disabled" SelectedIndex="0" PreviewSelectionChanged="RadTabControl_PreviewSelectionChanged"> |
|
73 |
<Grid Margin="10"> |
|
74 |
<telerik:RadTabControl |
|
75 |
x:Name="RadTab" |
|
76 |
HorizontalAlignment="Stretch" |
|
77 |
HorizontalContentAlignment="Stretch" |
|
78 |
telerik:StyleManager.Theme="Office2016" |
|
79 |
BorderThickness="0" |
|
80 |
FontSize="10" |
|
81 |
HeaderBackground="#f5f5f5" |
|
82 |
PreviewSelectionChanged="RadTabControl_PreviewSelectionChanged" |
|
83 |
ScrollViewer.HorizontalScrollBarVisibility="Disabled" |
|
84 |
SelectedIndex="0"> |
|
62 | 85 |
|
63 |
<telerik:RadTabItem Header="Private" FontSize="10" FontWeight="Bold" HeaderForeground="{DynamicResource KCOMColor_MarkerBrush}"> |
|
86 |
<telerik:RadTabItem |
|
87 |
FontSize="10" |
|
88 |
FontWeight="Bold" |
|
89 |
Header="Private" |
|
90 |
HeaderForeground="{DynamicResource KCOMColor_MarkerBrush}"> |
|
64 | 91 |
<Grid> |
65 | 92 |
<Grid.RowDefinitions> |
66 |
<RowDefinition Height="Auto"/> |
|
67 |
<RowDefinition Height="Auto"/> |
|
68 |
<RowDefinition Height="*"/> |
|
93 |
<RowDefinition Height="Auto" />
|
|
94 |
<RowDefinition Height="Auto" />
|
|
95 |
<RowDefinition Height="*" />
|
|
69 | 96 |
</Grid.RowDefinitions> |
70 | 97 |
|
71 | 98 |
<StackPanel Grid.Row="0" Orientation="Vertical"> |
72 | 99 |
<Grid Margin="0,10"> |
73 | 100 |
<Grid.ColumnDefinitions> |
74 |
<ColumnDefinition Width="3*"/> |
|
75 |
<ColumnDefinition Width="3*"/> |
|
76 |
<ColumnDefinition Width="3*"/> |
|
77 |
<ColumnDefinition Width="3*"/> |
|
101 |
<ColumnDefinition Width="3*" />
|
|
102 |
<ColumnDefinition Width="3*" />
|
|
103 |
<ColumnDefinition Width="3*" />
|
|
104 |
<ColumnDefinition Width="3*" />
|
|
78 | 105 |
</Grid.ColumnDefinitions> |
79 |
<Button Content="Place" Grid.Column="0" Click="Place_Symbol" Margin="5,0,0,0" FontWeight="Normal" Padding="5" Background="#3d3d3d" Foreground="White"/> |
|
80 |
<Button Content="Capture" Grid.Column="1" Click="Image_Place_Register" Margin="5,0,0,0" FontWeight="Normal" Padding="5" Background="#3d3d3d" Foreground="White"/> |
|
81 |
<Button Content="Register" Grid.Column="2" Click="Create_Symbol" Margin="5,0,0,0" FontWeight="Normal" Padding="5" Background="#3d3d3d" Foreground="White"/> |
|
106 |
<Button |
|
107 |
Grid.Column="0" |
|
108 |
Margin="5,0,0,0" |
|
109 |
Padding="5" |
|
110 |
Background="#3d3d3d" |
|
111 |
Click="Place_Symbol" |
|
112 |
Content="Place" |
|
113 |
FontWeight="Normal" |
|
114 |
Foreground="White" /> |
|
115 |
<Button |
|
116 |
Grid.Column="1" |
|
117 |
Margin="5,0,0,0" |
|
118 |
Padding="5" |
|
119 |
Background="#3d3d3d" |
|
120 |
Click="Image_Place_Register" |
|
121 |
Content="Capture" |
|
122 |
FontWeight="Normal" |
|
123 |
Foreground="White" /> |
|
124 |
<Button |
|
125 |
Grid.Column="2" |
|
126 |
Margin="5,0,0,0" |
|
127 |
Padding="5" |
|
128 |
Background="#3d3d3d" |
|
129 |
Click="Create_Symbol" |
|
130 |
Content="Register" |
|
131 |
FontWeight="Normal" |
|
132 |
Foreground="White" /> |
|
82 | 133 |
<!-- <Button Content="Rename" Grid.Column="2" Click="Rename_Symbol" Margin="5,0,0,0" FontWeight="Normal" Padding="5" Background="#3d3d3d" Foreground="White"/> --> |
83 |
|
|
84 |
<Button Content="Remove" Grid.Column="3" Click="Remove_Symbol" Margin="5,0,0,0" FontWeight="Normal" Padding="5" Background="#3d3d3d" Foreground="White"/> |
|
134 |
|
|
135 |
<Button |
|
136 |
Grid.Column="3" |
|
137 |
Margin="5,0,0,0" |
|
138 |
Padding="5" |
|
139 |
Background="#3d3d3d" |
|
140 |
Click="Remove_Symbol" |
|
141 |
Content="Remove" |
|
142 |
FontWeight="Normal" |
|
143 |
Foreground="White" /> |
|
85 | 144 |
</Grid> |
86 | 145 |
<Grid Margin="0,0,0,10"> |
87 | 146 |
<Grid.ColumnDefinitions> |
88 |
<ColumnDefinition Width="*"/> |
|
147 |
<ColumnDefinition Width="*" />
|
|
89 | 148 |
</Grid.ColumnDefinitions> |
90 |
<TextBlock Text="[Tip : Double Click]" Grid.Column="0" FontSize="10" VerticalAlignment="Center" HorizontalAlignment="Right"/> |
|
149 |
<TextBlock |
|
150 |
Grid.Column="0" |
|
151 |
HorizontalAlignment="Right" |
|
152 |
VerticalAlignment="Center" |
|
153 |
FontSize="10" |
|
154 |
Text="[Tip : Double Click]" /> |
|
91 | 155 |
</Grid> |
92 | 156 |
</StackPanel> |
93 |
<ScrollViewer x:Name="ScView" Grid.Row="2" > |
|
94 |
<telerik:RadListBox x:Name="lstSymbolPrivate" Background="#f5f5f5" FontWeight="Normal" |
|
95 |
ItemTemplate="{StaticResource SymbolTemplate_Private}" |
|
96 |
MouseDown="lstSymbolPrivate_MouseDown" |
|
97 |
PreviewMouseUp="lstSymbolPrivate_PreviewMouseUp" |
|
98 |
MouseLeave="lstSymbolPrivate_MouseLeave" AllowDrop="False" |
|
99 |
PreviewMouseWheel ="lstSymbolPrivate_PreviewMouseWheel"> |
|
157 |
<ScrollViewer x:Name="ScView" Grid.Row="2"> |
|
158 |
<telerik:RadListBox |
|
159 |
x:Name="lstSymbolPrivate" |
|
160 |
AllowDrop="False" |
|
161 |
Background="#f5f5f5" |
|
162 |
FontWeight="Normal" |
|
163 |
ItemTemplate="{StaticResource SymbolTemplate_Private}" |
|
164 |
MouseDown="lstSymbolPrivate_MouseDown" |
|
165 |
MouseLeave="lstSymbolPrivate_MouseLeave" |
|
166 |
PreviewMouseUp="lstSymbolPrivate_PreviewMouseUp" |
|
167 |
PreviewMouseWheel="lstSymbolPrivate_PreviewMouseWheel"> |
|
100 | 168 |
<!--<telerik:RadListBox.DragDropBehavior> |
101 | 169 |
<telerik:ListBoxDragDropBehavior AllowReorder="True" /> |
102 | 170 |
</telerik:RadListBox.DragDropBehavior>--> |
... | ... | |
106 | 174 |
<DataTemplate> |
107 | 175 |
<Grid Width="80"> |
108 | 176 |
<Image |
109 |
Source="{Binding ImageUri,Converter={StaticResource SvgImageConverter}}" |
|
110 |
HorizontalAlignment="Left"/> |
|
177 |
HorizontalAlignment="Left" |
|
178 |
Source="{Binding ImageUri, Converter={StaticResource SvgImageConverter}}" |
|
179 |
Stretch="UniformToFill" /> |
|
111 | 180 |
</Grid> |
112 | 181 |
</DataTemplate> |
113 | 182 |
</Behaviors:RadListBoxDragVisualProvider.DraggedItemTemplate> |
... | ... | |
118 | 187 |
</Grid> |
119 | 188 |
</telerik:RadTabItem> |
120 | 189 |
|
121 |
<telerik:RadTabItem Header="Public" FontWeight="Bold" FontSize="10" HeaderForeground="{DynamicResource KCOMColor_MarkerBrush}" > |
|
190 |
<telerik:RadTabItem |
|
191 |
FontSize="10" |
|
192 |
FontWeight="Bold" |
|
193 |
Header="Public" |
|
194 |
HeaderForeground="{DynamicResource KCOMColor_MarkerBrush}"> |
|
122 | 195 |
<Grid> |
123 | 196 |
<Grid.RowDefinitions> |
124 |
<RowDefinition Height="Auto"/> |
|
125 |
<RowDefinition Height="*"/> |
|
197 |
<RowDefinition Height="Auto" />
|
|
198 |
<RowDefinition Height="*" />
|
|
126 | 199 |
</Grid.RowDefinitions> |
127 | 200 |
|
128 | 201 |
<StackPanel Grid.Row="0" Orientation="Vertical"> |
129 | 202 |
<Grid Margin="0,10"> |
130 | 203 |
<Grid.ColumnDefinitions> |
131 |
<ColumnDefinition Width="1*"/> |
|
132 |
<ColumnDefinition Width="3*"/> |
|
204 |
<ColumnDefinition Width="1*" />
|
|
205 |
<ColumnDefinition Width="3*" />
|
|
133 | 206 |
</Grid.ColumnDefinitions> |
134 | 207 |
|
135 |
<TextBlock FontWeight="Normal" VerticalAlignment="Center">Department</TextBlock> |
|
136 |
<telerik:RadComboBox FontWeight="Normal" EmptyText="ALL" Grid.Column="1" HorizontalAlignment="Stretch" Margin="5" DropDownWidth="*" Background="White" BorderBrush="#d6d6d6" x:Name="deptlist" |
|
137 |
ClearSelectionButtonVisibility="Visible" ClearSelectionButtonContent="Show All" SelectionChanged="deptlist_SelectionChanged"/> |
|
208 |
<TextBlock VerticalAlignment="Center" FontWeight="Normal">Department</TextBlock> |
|
209 |
<telerik:RadComboBox |
|
210 |
x:Name="deptlist" |
|
211 |
Grid.Column="1" |
|
212 |
Margin="5" |
|
213 |
HorizontalAlignment="Stretch" |
|
214 |
Background="White" |
|
215 |
BorderBrush="#d6d6d6" |
|
216 |
ClearSelectionButtonContent="Show All" |
|
217 |
ClearSelectionButtonVisibility="Visible" |
|
218 |
DropDownWidth="*" |
|
219 |
EmptyText="ALL" |
|
220 |
FontWeight="Normal" |
|
221 |
SelectionChanged="deptlist_SelectionChanged" /> |
|
138 | 222 |
|
139 | 223 |
</Grid> |
140 | 224 |
|
141 | 225 |
<Grid Margin="0,0"> |
142 | 226 |
<Grid.ColumnDefinitions> |
143 |
<ColumnDefinition Width="3*"/> |
|
144 |
<ColumnDefinition Width="3*"/> |
|
145 |
<ColumnDefinition Width="3*"/> |
|
146 |
<ColumnDefinition Width="3*"/> |
|
227 |
<ColumnDefinition Width="3*" />
|
|
228 |
<ColumnDefinition Width="3*" />
|
|
229 |
<ColumnDefinition Width="3*" />
|
|
230 |
<ColumnDefinition Width="3*" />
|
|
147 | 231 |
</Grid.ColumnDefinitions> |
148 |
<Button Content="Place" Click="Place_Symbol_Public" Grid.Column="0" Margin="5,0,0,0" FontWeight="Normal" Padding="5" Background="#3d3d3d" Foreground="White"/> |
|
149 |
<Button Content="Capture" Grid.Column="1" Click="Image_Place_Register" Margin="5,0,0,0" FontWeight="Normal" Padding="5" Background="#3d3d3d" Foreground="White"/> |
|
150 |
<Button Content="Register" Grid.Column="2" Click="Create_Symbol" Margin="5,0,0,0" FontWeight="Normal" Padding="5" Background="#3d3d3d" Foreground="White"/> |
|
232 |
<Button |
|
233 |
Grid.Column="0" |
|
234 |
Margin="5,0,0,0" |
|
235 |
Padding="5" |
|
236 |
Background="#3d3d3d" |
|
237 |
Click="Place_Symbol_Public" |
|
238 |
Content="Place" |
|
239 |
FontWeight="Normal" |
|
240 |
Foreground="White" /> |
|
241 |
<Button |
|
242 |
Grid.Column="1" |
|
243 |
Margin="5,0,0,0" |
|
244 |
Padding="5" |
|
245 |
Background="#3d3d3d" |
|
246 |
Click="Image_Place_Register" |
|
247 |
Content="Capture" |
|
248 |
FontWeight="Normal" |
|
249 |
Foreground="White" /> |
|
250 |
<Button |
|
251 |
Grid.Column="2" |
|
252 |
Margin="5,0,0,0" |
|
253 |
Padding="5" |
|
254 |
Background="#3d3d3d" |
|
255 |
Click="Create_Symbol" |
|
256 |
Content="Register" |
|
257 |
FontWeight="Normal" |
|
258 |
Foreground="White" /> |
|
151 | 259 |
<!--<Button Content="Rename" Grid.Column="2" Click="Rename_Symbol_Public" Margin="5,0,0,0" FontWeight="Normal" Padding="5" Background="#3d3d3d" Foreground="White"/>--> |
152 |
<Button Content="Remove" Grid.Column="3" Click="Remove_Symbol_Public" Margin="5,0,0,0" FontWeight="Normal" Padding="5" Background="#3d3d3d" Foreground="White"/> |
|
260 |
<Button |
|
261 |
Grid.Column="3" |
|
262 |
Margin="5,0,0,0" |
|
263 |
Padding="5" |
|
264 |
Background="#3d3d3d" |
|
265 |
Click="Remove_Symbol_Public" |
|
266 |
Content="Remove" |
|
267 |
FontWeight="Normal" |
|
268 |
Foreground="White" /> |
|
153 | 269 |
</Grid> |
154 | 270 |
<Grid Margin="0,10"> |
155 | 271 |
<Grid.ColumnDefinitions> |
156 |
<ColumnDefinition Width="*"/> |
|
272 |
<ColumnDefinition Width="*" />
|
|
157 | 273 |
</Grid.ColumnDefinitions> |
158 |
<TextBlock Text="[Tip : Double Click]" Grid.Column="0" FontSize="10" VerticalAlignment="Center" HorizontalAlignment="Right"/> |
|
274 |
<TextBlock |
|
275 |
Grid.Column="0" |
|
276 |
HorizontalAlignment="Right" |
|
277 |
VerticalAlignment="Center" |
|
278 |
FontSize="10" |
|
279 |
Text="[Tip : Double Click]" /> |
|
159 | 280 |
</Grid> |
160 | 281 |
</StackPanel> |
161 |
<ScrollViewer x:Name="ScView_Public" Grid.Row="2" > |
|
162 |
<telerik:RadListBox x:Name="lstSymbolPublic" Background="#f5f5f5" FontWeight="Normal" |
|
163 |
ItemTemplate="{StaticResource SymbolTemplate_Private}" AllowDrop="False" |
|
164 |
MouseDown="lstSymbolPrivate_MouseDown" |
|
165 |
PreviewMouseUp="lstSymbolPrivate_PreviewMouseUp" |
|
166 |
MouseLeave="lstSymbolPrivate_MouseLeave" |
|
167 |
PreviewMouseWheel ="lstSymbolPublic_PreviewMouseWheel"> |
|
282 |
<ScrollViewer x:Name="ScView_Public" Grid.Row="2"> |
|
283 |
<telerik:RadListBox |
|
284 |
x:Name="lstSymbolPublic" |
|
285 |
AllowDrop="False" |
|
286 |
Background="#f5f5f5" |
|
287 |
FontWeight="Normal" |
|
288 |
ItemTemplate="{StaticResource SymbolTemplate_Private}" |
|
289 |
MouseDown="lstSymbolPrivate_MouseDown" |
|
290 |
MouseLeave="lstSymbolPrivate_MouseLeave" |
|
291 |
PreviewMouseUp="lstSymbolPrivate_PreviewMouseUp" |
|
292 |
PreviewMouseWheel="lstSymbolPublic_PreviewMouseWheel"> |
|
168 | 293 |
<telerik:RadListBox.DragDropBehavior> |
169 | 294 |
<telerik:ListBoxDragDropBehavior AllowReorder="True" /> |
170 | 295 |
</telerik:RadListBox.DragDropBehavior> |
... | ... | |
173 | 298 |
<Behaviors:RadListBoxDragVisualProvider.DraggedItemTemplate> |
174 | 299 |
<DataTemplate> |
175 | 300 |
<Grid> |
176 |
<Image Width="80" x:Name="SymbolImage" Source="{Binding ImageUri,Converter={StaticResource SvgImageConverter}}"/> |
|
301 |
<Image |
|
302 |
x:Name="SymbolImage" |
|
303 |
Width="80" |
|
304 |
Source="{Binding ImageUri, Converter={StaticResource SvgImageConverter}}" |
|
305 |
Stretch="Fill" /> |
|
177 | 306 |
</Grid> |
178 | 307 |
</DataTemplate> |
179 | 308 |
</Behaviors:RadListBoxDragVisualProvider.DraggedItemTemplate> |
KCOM/Controls/Symbol.xaml.cs | ||
---|---|---|
5 | 5 |
using KCOMDataModel.DataModel; |
6 | 6 |
using MarkupToPDF.Common; |
7 | 7 |
using MarkupToPDF.Controls.Parsing; |
8 |
using Svg2Xaml; |
|
9 | 8 |
using System; |
10 | 9 |
using System.Collections.Generic; |
11 | 10 |
using System.ComponentModel; |
... | ... | |
301 | 300 |
byte[] Img_byte = fs.ToArray(); |
302 | 301 |
|
303 | 302 |
kr.co.devdoftech.cloud.FileUpload fileUploader = App.FileUploader; |
304 |
filename = fileUploader.Run(App.ViewInfo.ProjectNO, Common.ViewerDataModel.Instance.SystemMain.dzMainMenu._DocItem.DOCUMENT_NO, App.ViewInfo.UserID, Commons.shortGuid() + ".png", Img_byte); |
|
303 |
filename = fileUploader.RunSymbol(App.ViewInfo.ProjectNO, Common.ViewerDataModel.Instance.SystemMain.dzMainMenu._DocItem.DOCUMENT_NO, App.ViewInfo.UserID, Commons.shortGuid() + ".png", Img_byte);
|
|
305 | 304 |
Check_Uri.UriCheck(filename); |
306 | 305 |
if (RadTab.SelectedIndex == 0) |
307 | 306 |
{ |
... | ... | |
579 | 578 |
//img.Source = new System.Windows.Media.Imaging.BitmapImage(new Uri(Data_)); |
580 | 579 |
if (Data_.Contains(".svg")) |
581 | 580 |
{ |
582 |
byte[] imageData = null; |
|
583 |
DrawingImage image = null; |
|
584 |
using (System.Net.WebClient web = new System.Net.WebClient()) |
|
585 |
{ |
|
586 |
imageData = web.DownloadData(new Uri(Data_)); |
|
587 |
System.IO.Stream stream = new System.IO.MemoryStream(imageData); |
|
588 |
image = SvgReader.Load(stream); |
|
589 |
} |
|
590 |
img.Source = image; |
|
581 |
SharpVectors.Converters.SvgImageExtension svgImage = new SharpVectors.Converters.SvgImageExtension(Data_); |
|
582 |
img.Source = (DrawingImage)svgImage.ProvideValue(null); |
|
591 | 583 |
} |
592 | 584 |
else |
593 | 585 |
{ |
KCOM/Events/Event_KeyEvent.cs | ||
---|---|---|
2 | 2 |
using KCOM.Events; |
3 | 3 |
using MarkupToPDF.Common; |
4 | 4 |
using MarkupToPDF.Controls.Parsing; |
5 |
using Svg2Xaml; |
|
6 | 5 |
using System; |
7 | 6 |
using System.Collections.Generic; |
8 | 7 |
using System.ComponentModel; |
KCOM/Events/Implementation/TopMenuEvent.cs | ||
---|---|---|
4 | 4 |
using KCOM.Events; |
5 | 5 |
using KCOMDataModel.DataModel; |
6 | 6 |
using MarkupToPDF.Common; |
7 |
using Svg2Xaml; |
|
8 | 7 |
using System; |
9 | 8 |
using System.Collections.Generic; |
10 | 9 |
using System.Linq; |
... | ... | |
3176 | 3175 |
Image img = new Image(); |
3177 | 3176 |
if (filename.Contains(".svg")) |
3178 | 3177 |
{ |
3179 |
byte[] imageData = null; |
|
3180 |
DrawingImage image = null; |
|
3181 |
using (System.Net.WebClient web = new System.Net.WebClient()) |
|
3182 |
{ |
|
3183 |
imageData = web.DownloadData(new Uri(filename)); |
|
3184 |
System.IO.Stream stream = new System.IO.MemoryStream(imageData); |
|
3185 |
image = SvgReader.Load(stream); |
|
3186 |
} |
|
3187 |
img.Source = image; |
|
3178 |
SharpVectors.Converters.SvgImageExtension svgImage = new SharpVectors.Converters.SvgImageExtension(filename); |
|
3179 |
img.Source = (DrawingImage)svgImage.ProvideValue(null); |
|
3188 | 3180 |
} |
3189 | 3181 |
else |
3190 | 3182 |
{ |
KCOM/Events/PasteCommand.cs | ||
---|---|---|
7 | 7 |
using Newtonsoft.Json.Converters; |
8 | 8 |
using Newtonsoft.Json.Linq; |
9 | 9 |
using Newtonsoft.Json.Serialization; |
10 |
using Svg2Xaml; |
|
11 | 10 |
using System; |
12 | 11 |
using System.Collections; |
13 | 12 |
using System.Collections.Generic; |
... | ... | |
174 | 173 |
System.Windows.Controls.Image img = new System.Windows.Controls.Image(); |
175 | 174 |
if (filename.Contains(".svg")) |
176 | 175 |
{ |
177 |
byte[] imageData = null; |
|
178 |
DrawingImage image = null; |
|
179 |
using (System.Net.WebClient web = new System.Net.WebClient()) |
|
180 |
{ |
|
181 |
imageData = web.DownloadData(new Uri(filename)); |
|
182 |
System.IO.Stream stream = new System.IO.MemoryStream(imageData); |
|
183 |
image = SvgReader.Load(stream); |
|
184 |
} |
|
185 |
img.Source = image; |
|
176 |
SharpVectors.Converters.SvgImageExtension svgImage = new SharpVectors.Converters.SvgImageExtension(filename); |
|
177 |
img.Source = (DrawingImage)svgImage.ProvideValue(null); |
|
186 | 178 |
} |
187 | 179 |
else |
188 | 180 |
{ |
KCOM/KCOM.csproj | ||
---|---|---|
438 | 438 |
<Reference Include="Newtonsoft.Json, Version=12.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL"> |
439 | 439 |
<HintPath>..\packages\Newtonsoft.Json.12.0.3\lib\net45\Newtonsoft.Json.dll</HintPath> |
440 | 440 |
</Reference> |
441 |
<Reference Include="Svg2Xaml, Version=0.3.0.5, Culture=neutral, processorArchitecture=MSIL"> |
|
442 |
<HintPath>..\packages\Svg2Xaml.0.3.0.5\lib\net40\Svg2Xaml.dll</HintPath> |
|
441 |
<Reference Include="SharpVectors.Converters.Wpf, Version=1.8.1.0, Culture=neutral, PublicKeyToken=b532964b8548be77, processorArchitecture=MSIL"> |
|
442 |
<HintPath>..\packages\SharpVectors.Wpf.1.8.1\lib\net46\SharpVectors.Converters.Wpf.dll</HintPath> |
|
443 |
</Reference> |
|
444 |
<Reference Include="SharpVectors.Core, Version=1.8.1.0, Culture=neutral, PublicKeyToken=7407205e337c98ef, processorArchitecture=MSIL"> |
|
445 |
<HintPath>..\packages\SharpVectors.Wpf.1.8.1\lib\net46\SharpVectors.Core.dll</HintPath> |
|
446 |
</Reference> |
|
447 |
<Reference Include="SharpVectors.Css, Version=1.8.1.0, Culture=neutral, PublicKeyToken=7a46e3f532fdb787, processorArchitecture=MSIL"> |
|
448 |
<HintPath>..\packages\SharpVectors.Wpf.1.8.1\lib\net46\SharpVectors.Css.dll</HintPath> |
|
449 |
</Reference> |
|
450 |
<Reference Include="SharpVectors.Dom, Version=1.8.1.0, Culture=neutral, PublicKeyToken=517340b6277b1a7a, processorArchitecture=MSIL"> |
|
451 |
<HintPath>..\packages\SharpVectors.Wpf.1.8.1\lib\net46\SharpVectors.Dom.dll</HintPath> |
|
452 |
</Reference> |
|
453 |
<Reference Include="SharpVectors.Model, Version=1.8.1.0, Culture=neutral, PublicKeyToken=2236cfc76b505845, processorArchitecture=MSIL"> |
|
454 |
<HintPath>..\packages\SharpVectors.Wpf.1.8.1\lib\net46\SharpVectors.Model.dll</HintPath> |
|
455 |
</Reference> |
|
456 |
<Reference Include="SharpVectors.Rendering.Wpf, Version=1.8.1.0, Culture=neutral, PublicKeyToken=d0902381100df30e, processorArchitecture=MSIL"> |
|
457 |
<HintPath>..\packages\SharpVectors.Wpf.1.8.1\lib\net46\SharpVectors.Rendering.Wpf.dll</HintPath> |
|
458 |
</Reference> |
|
459 |
<Reference Include="SharpVectors.Runtime.Wpf, Version=1.8.1.0, Culture=neutral, PublicKeyToken=d16e717f0a981fb9, processorArchitecture=MSIL"> |
|
460 |
<HintPath>..\packages\SharpVectors.Wpf.1.8.1\lib\net46\SharpVectors.Runtime.Wpf.dll</HintPath> |
|
443 | 461 |
</Reference> |
444 | 462 |
<Reference Include="System" /> |
445 | 463 |
<Reference Include="System.ComponentModel.DataAnnotations" /> |
... | ... | |
1210 | 1228 |
<CachedAppSettingsObjectName>Settings</CachedAppSettingsObjectName> |
1211 | 1229 |
<CachedSettingsPropName>KCOM_Get_FinalImage_Get_PdfImage</CachedSettingsPropName> |
1212 | 1230 |
</WebReferenceUrl> |
1213 |
<WebReferenceUrl Include="https://localhost:44301/ImageUpload/FileUpload.asmx">
|
|
1231 |
<WebReferenceUrl Include="http://localhost:44301/ImageUpload/FileUpload.asmx"> |
|
1214 | 1232 |
<UrlBehavior>Dynamic</UrlBehavior> |
1215 | 1233 |
<RelPath>Web References\kr.co.devdoftech.cloud\</RelPath> |
1216 |
<UpdateFromURL>https://localhost:44301/ImageUpload/FileUpload.asmx</UpdateFromURL>
|
|
1234 |
<UpdateFromURL>http://localhost:44301/ImageUpload/FileUpload.asmx</UpdateFromURL> |
|
1217 | 1235 |
<ServiceLocationURL> |
1218 | 1236 |
</ServiceLocationURL> |
1219 | 1237 |
<CachedDynamicPropName> |
KCOM/Properties/AssemblyInfo.cs | ||
---|---|---|
51 | 51 |
// 모든 값을 지정하거나 아래와 같이 '*'를 사용하여 빌드 번호 및 수정 번호가 자동으로 |
52 | 52 |
// 지정되도록 할 수 있습니다. |
53 | 53 |
// [assembly: AssemblyVersion("1.0.*")] |
54 |
[assembly: AssemblyVersion("5.3.1.0")]
|
|
55 |
[assembly: AssemblyFileVersion("5.3.1.0")]
|
|
54 |
[assembly: AssemblyVersion("5.4.0.0")]
|
|
55 |
[assembly: AssemblyFileVersion("5.4.0.0")]
|
|
56 | 56 |
[assembly: log4net.Config.XmlConfigurator(ConfigFile = "Log.config", Watch = true)] |
KCOM/Properties/Settings.Designer.cs | ||
---|---|---|
12 | 12 |
|
13 | 13 |
|
14 | 14 |
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] |
15 |
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "15.9.0.0")]
|
|
15 |
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "16.10.0.0")]
|
|
16 | 16 |
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase { |
17 | 17 |
|
18 | 18 |
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); |
... | ... | |
38 | 38 |
[global::System.Configuration.ApplicationScopedSettingAttribute()] |
39 | 39 |
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()] |
40 | 40 |
[global::System.Configuration.SpecialSettingAttribute(global::System.Configuration.SpecialSetting.WebServiceUrl)] |
41 |
[global::System.Configuration.DefaultSettingValueAttribute("https://localhost:44301/ImageUpload/FileUpload.asmx")]
|
|
41 |
[global::System.Configuration.DefaultSettingValueAttribute("http://localhost:44301/ImageUpload/FileUpload.asmx")] |
|
42 | 42 |
public string KCOM_kr_co_devdoftech_cloud_FileUpload { |
43 | 43 |
get { |
44 | 44 |
return ((string)(this["KCOM_kr_co_devdoftech_cloud_FileUpload"])); |
KCOM/Properties/Settings.settings | ||
---|---|---|
6 | 6 |
<Value Profile="(Default)">http://www.devdoftech.co.kr:5979</Value> |
7 | 7 |
</Setting> |
8 | 8 |
<Setting Name="KCOM_kr_co_devdoftech_cloud_FileUpload" Type="(Web Service URL)" Scope="Application"> |
9 |
<Value Profile="(Default)">https://localhost:44301/ImageUpload/FileUpload.asmx</Value>
|
|
9 |
<Value Profile="(Default)">http://localhost:44301/ImageUpload/FileUpload.asmx</Value> |
|
10 | 10 |
</Setting> |
11 | 11 |
<Setting Name="KCOM_Get_FinalImage_Get_PdfImage" Type="(Web Service URL)" Scope="Application"> |
12 | 12 |
<Value Profile="(Default)">http://cloud.devdoftech.co.kr:5977/Get_FInalImage/Get_PdfImage.asmx</Value> |
KCOM/Views/MainMenu.xaml.cs | ||
---|---|---|
12 | 12 |
using MarkupToPDF.Controls.Polygon; |
13 | 13 |
using MarkupToPDF.Controls.Shape; |
14 | 14 |
using MarkupToPDF.Controls.Text; |
15 |
using Svg2Xaml; |
|
16 | 15 |
using System; |
17 | 16 |
using System.Collections.Generic; |
18 | 17 |
using System.Diagnostics; |
... | ... | |
565 | 564 |
ViewerDataModel.Instance.SystemMain.dzMainMenu.searchPanel_Instance.SetSerachPDFFile(instnaceFile); |
566 | 565 |
ViewerDataModel.Instance.IsDownloadOriginal = true; |
567 | 566 |
(sender as IIpc.WcfServer).IpcFileDownloadReceived -= WcfServer_IpcFileDownloadReceived; |
568 |
//(sender as IIpc.WcfServer).Stop();
|
|
567 |
(sender as IIpc.WcfServer).Stop(); |
|
569 | 568 |
} |
570 | 569 |
} |
571 | 570 |
catch (Exception ex) |
... | ... | |
2634 | 2633 |
//img.Source = new System.Windows.Media.Imaging.BitmapImage(new Uri(Data_)); |
2635 | 2634 |
if (Data_.Contains(".svg")) |
2636 | 2635 |
{ |
2637 |
byte[] imageData = null; |
|
2638 |
DrawingImage image = null; |
|
2639 |
using (System.Net.WebClient web = new System.Net.WebClient()) |
|
2640 |
{ |
|
2641 |
imageData = web.DownloadData(new Uri(Data_)); |
|
2642 |
System.IO.Stream stream = new System.IO.MemoryStream(imageData); |
|
2643 |
image = SvgReader.Load(stream); |
|
2644 |
} |
|
2645 |
img.Source = image; |
|
2636 |
SharpVectors.Converters.SvgImageExtension svgImage = new SharpVectors.Converters.SvgImageExtension(Data_); |
|
2637 |
img.Source = (DrawingImage)svgImage.ProvideValue(null); |
|
2646 | 2638 |
} |
2647 | 2639 |
else |
2648 | 2640 |
{ |
... | ... | |
3758 | 3750 |
Image img = new Image(); |
3759 | 3751 |
if (filename.Contains(".svg")) |
3760 | 3752 |
{ |
3761 |
byte[] imageData = null; |
|
3762 |
DrawingImage image = null; |
|
3763 |
using (System.Net.WebClient web = new System.Net.WebClient()) |
|
3764 |
{ |
|
3765 |
imageData = web.DownloadData(uri.Uri); |
|
3766 |
System.IO.Stream stream = new System.IO.MemoryStream(imageData); |
|
3767 |
image = SvgReader.Load(stream); |
|
3768 |
} |
|
3769 |
img.Source = image; |
|
3753 |
SharpVectors.Converters.SvgImageExtension svgImage = new SharpVectors.Converters.SvgImageExtension(uri.Uri.ToString()); |
|
3754 |
img.Source = (DrawingImage)svgImage.ProvideValue(null); |
|
3770 | 3755 |
} |
3771 | 3756 |
else |
3772 | 3757 |
{ |
KCOM/Web References/kr.co.devdoftech.cloud/FileUpload.disco | ||
---|---|---|
1 | 1 |
<?xml version="1.0" encoding="utf-8"?> |
2 | 2 |
<discovery xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://schemas.xmlsoap.org/disco/"> |
3 |
<contractRef ref="https://localhost:44301/ImageUpload/FileUpload.asmx?wsdl" docRef="https://localhost:44301/ImageUpload/FileUpload.asmx" xmlns="http://schemas.xmlsoap.org/disco/scl/" />
|
|
4 |
<soap address="https://localhost:44301/ImageUpload/FileUpload.asmx" xmlns:q1="http://tempuri.org/" binding="q1:FileUploadSoap" xmlns="http://schemas.xmlsoap.org/disco/soap/" />
|
|
5 |
<soap address="https://localhost:44301/ImageUpload/FileUpload.asmx" xmlns:q2="http://tempuri.org/" binding="q2:FileUploadSoap12" xmlns="http://schemas.xmlsoap.org/disco/soap/" />
|
|
3 |
<contractRef ref="http://localhost:44301/ImageUpload/FileUpload.asmx?wsdl" docRef="http://localhost:44301/ImageUpload/FileUpload.asmx" xmlns="http://schemas.xmlsoap.org/disco/scl/" />
|
|
4 |
<soap address="http://localhost:44301/ImageUpload/FileUpload.asmx" xmlns:q1="http://tempuri.org/" binding="q1:FileUploadSoap" xmlns="http://schemas.xmlsoap.org/disco/soap/" /> |
|
5 |
<soap address="http://localhost:44301/ImageUpload/FileUpload.asmx" xmlns:q2="http://tempuri.org/" binding="q2:FileUploadSoap12" xmlns="http://schemas.xmlsoap.org/disco/soap/" /> |
|
6 | 6 |
</discovery> |
KCOM/Web References/kr.co.devdoftech.cloud/FileUpload.wsdl | ||
---|---|---|
20 | 20 |
</s:sequence> |
21 | 21 |
</s:complexType> |
22 | 22 |
</s:element> |
23 |
<s:element name="RunSymbol"> |
|
24 |
<s:complexType> |
|
25 |
<s:sequence> |
|
26 |
<s:element minOccurs="0" maxOccurs="1" name="ProjectNo" type="s:string" /> |
|
27 |
<s:element minOccurs="0" maxOccurs="1" name="VPNo" type="s:string" /> |
|
28 |
<s:element minOccurs="0" maxOccurs="1" name="UserID" type="s:string" /> |
|
29 |
<s:element minOccurs="0" maxOccurs="1" name="FileName" type="s:string" /> |
|
30 |
<s:element minOccurs="0" maxOccurs="1" name="f" type="s:base64Binary" /> |
|
31 |
</s:sequence> |
|
32 |
</s:complexType> |
|
33 |
</s:element> |
|
34 |
<s:element name="RunSymbolResponse"> |
|
35 |
<s:complexType> |
|
36 |
<s:sequence> |
|
37 |
<s:element minOccurs="0" maxOccurs="1" name="RunSymbolResult" type="s:string" /> |
|
38 |
</s:sequence> |
|
39 |
</s:complexType> |
|
40 |
</s:element> |
|
41 |
<s:element name="ServerMapPathTest"> |
|
42 |
<s:complexType> |
|
43 |
<s:sequence> |
|
44 |
<s:element minOccurs="0" maxOccurs="1" name="uri" type="s:string" /> |
|
45 |
</s:sequence> |
|
46 |
</s:complexType> |
|
47 |
</s:element> |
|
48 |
<s:element name="ServerMapPathTestResponse"> |
|
49 |
<s:complexType> |
|
50 |
<s:sequence> |
|
51 |
<s:element minOccurs="0" maxOccurs="1" name="ServerMapPathTestResult" type="s:string" /> |
|
52 |
</s:sequence> |
|
53 |
</s:complexType> |
|
54 |
</s:element> |
|
55 |
<s:element name="SymbolRegen"> |
|
56 |
<s:complexType /> |
|
57 |
</s:element> |
|
58 |
<s:element name="SymbolRegenResponse"> |
|
59 |
<s:complexType> |
|
60 |
<s:sequence> |
|
61 |
<s:element minOccurs="0" maxOccurs="1" name="SymbolRegenResult" type="s:string" /> |
|
62 |
</s:sequence> |
|
63 |
</s:complexType> |
|
64 |
</s:element> |
|
23 | 65 |
</s:schema> |
24 | 66 |
</wsdl:types> |
25 | 67 |
<wsdl:message name="RunSoapIn"> |
... | ... | |
28 | 70 |
<wsdl:message name="RunSoapOut"> |
29 | 71 |
<wsdl:part name="parameters" element="tns:RunResponse" /> |
30 | 72 |
</wsdl:message> |
73 |
<wsdl:message name="RunSymbolSoapIn"> |
|
74 |
<wsdl:part name="parameters" element="tns:RunSymbol" /> |
|
75 |
</wsdl:message> |
|
76 |
<wsdl:message name="RunSymbolSoapOut"> |
|
77 |
<wsdl:part name="parameters" element="tns:RunSymbolResponse" /> |
|
78 |
</wsdl:message> |
|
79 |
<wsdl:message name="ServerMapPathTestSoapIn"> |
|
80 |
<wsdl:part name="parameters" element="tns:ServerMapPathTest" /> |
|
81 |
</wsdl:message> |
|
82 |
<wsdl:message name="ServerMapPathTestSoapOut"> |
|
83 |
<wsdl:part name="parameters" element="tns:ServerMapPathTestResponse" /> |
|
84 |
</wsdl:message> |
|
85 |
<wsdl:message name="SymbolRegenSoapIn"> |
|
86 |
<wsdl:part name="parameters" element="tns:SymbolRegen" /> |
|
87 |
</wsdl:message> |
|
88 |
<wsdl:message name="SymbolRegenSoapOut"> |
|
89 |
<wsdl:part name="parameters" element="tns:SymbolRegenResponse" /> |
|
90 |
</wsdl:message> |
|
31 | 91 |
<wsdl:portType name="FileUploadSoap"> |
32 | 92 |
<wsdl:operation name="Run"> |
33 | 93 |
<wsdl:input message="tns:RunSoapIn" /> |
34 | 94 |
<wsdl:output message="tns:RunSoapOut" /> |
35 | 95 |
</wsdl:operation> |
96 |
<wsdl:operation name="RunSymbol"> |
|
97 |
<wsdl:input message="tns:RunSymbolSoapIn" /> |
|
98 |
<wsdl:output message="tns:RunSymbolSoapOut" /> |
|
99 |
</wsdl:operation> |
|
100 |
<wsdl:operation name="ServerMapPathTest"> |
|
101 |
<wsdl:input message="tns:ServerMapPathTestSoapIn" /> |
|
102 |
<wsdl:output message="tns:ServerMapPathTestSoapOut" /> |
|
103 |
</wsdl:operation> |
|
104 |
<wsdl:operation name="SymbolRegen"> |
|
105 |
<wsdl:input message="tns:SymbolRegenSoapIn" /> |
|
106 |
<wsdl:output message="tns:SymbolRegenSoapOut" /> |
|
107 |
</wsdl:operation> |
|
36 | 108 |
</wsdl:portType> |
37 | 109 |
<wsdl:binding name="FileUploadSoap" type="tns:FileUploadSoap"> |
38 | 110 |
<soap:binding transport="http://schemas.xmlsoap.org/soap/http" /> |
... | ... | |
45 | 117 |
<soap:body use="literal" /> |
46 | 118 |
</wsdl:output> |
47 | 119 |
</wsdl:operation> |
120 |
<wsdl:operation name="RunSymbol"> |
|
121 |
<soap:operation soapAction="http://tempuri.org/RunSymbol" style="document" /> |
|
122 |
<wsdl:input> |
|
123 |
<soap:body use="literal" /> |
|
124 |
</wsdl:input> |
|
125 |
<wsdl:output> |
|
126 |
<soap:body use="literal" /> |
|
127 |
</wsdl:output> |
|
128 |
</wsdl:operation> |
|
129 |
<wsdl:operation name="ServerMapPathTest"> |
|
130 |
<soap:operation soapAction="http://tempuri.org/ServerMapPathTest" style="document" /> |
|
131 |
<wsdl:input> |
|
132 |
<soap:body use="literal" /> |
|
133 |
</wsdl:input> |
|
134 |
<wsdl:output> |
|
135 |
<soap:body use="literal" /> |
|
136 |
</wsdl:output> |
|
137 |
</wsdl:operation> |
|
138 |
<wsdl:operation name="SymbolRegen"> |
|
139 |
<soap:operation soapAction="http://tempuri.org/SymbolRegen" style="document" /> |
|
140 |
<wsdl:input> |
|
141 |
<soap:body use="literal" /> |
|
142 |
</wsdl:input> |
|
143 |
<wsdl:output> |
|
144 |
<soap:body use="literal" /> |
|
145 |
</wsdl:output> |
|
146 |
</wsdl:operation> |
|
48 | 147 |
</wsdl:binding> |
49 | 148 |
<wsdl:binding name="FileUploadSoap12" type="tns:FileUploadSoap"> |
50 | 149 |
<soap12:binding transport="http://schemas.xmlsoap.org/soap/http" /> |
... | ... | |
57 | 156 |
<soap12:body use="literal" /> |
58 | 157 |
</wsdl:output> |
59 | 158 |
</wsdl:operation> |
159 |
<wsdl:operation name="RunSymbol"> |
|
160 |
<soap12:operation soapAction="http://tempuri.org/RunSymbol" style="document" /> |
|
161 |
<wsdl:input> |
|
162 |
<soap12:body use="literal" /> |
|
163 |
</wsdl:input> |
|
164 |
<wsdl:output> |
|
165 |
<soap12:body use="literal" /> |
|
166 |
</wsdl:output> |
|
167 |
</wsdl:operation> |
|
168 |
<wsdl:operation name="ServerMapPathTest"> |
|
169 |
<soap12:operation soapAction="http://tempuri.org/ServerMapPathTest" style="document" /> |
|
170 |
<wsdl:input> |
|
171 |
<soap12:body use="literal" /> |
|
172 |
</wsdl:input> |
|
173 |
<wsdl:output> |
|
174 |
<soap12:body use="literal" /> |
|
175 |
</wsdl:output> |
|
176 |
</wsdl:operation> |
|
177 |
<wsdl:operation name="SymbolRegen"> |
|
178 |
<soap12:operation soapAction="http://tempuri.org/SymbolRegen" style="document" /> |
|
179 |
<wsdl:input> |
|
180 |
<soap12:body use="literal" /> |
|
181 |
</wsdl:input> |
|
182 |
<wsdl:output> |
|
183 |
<soap12:body use="literal" /> |
|
184 |
</wsdl:output> |
|
185 |
</wsdl:operation> |
|
60 | 186 |
</wsdl:binding> |
61 | 187 |
<wsdl:service name="FileUpload"> |
62 | 188 |
<wsdl:port name="FileUploadSoap" binding="tns:FileUploadSoap"> |
63 |
<soap:address location="https://localhost:44301/ImageUpload/FileUpload.asmx" />
|
|
189 |
<soap:address location="http://localhost:44301/ImageUpload/FileUpload.asmx" /> |
|
64 | 190 |
</wsdl:port> |
65 | 191 |
<wsdl:port name="FileUploadSoap12" binding="tns:FileUploadSoap12"> |
66 |
<soap12:address location="https://localhost:44301/ImageUpload/FileUpload.asmx" />
|
|
192 |
<soap12:address location="http://localhost:44301/ImageUpload/FileUpload.asmx" /> |
|
67 | 193 |
</wsdl:port> |
68 | 194 |
</wsdl:service> |
69 | 195 |
</wsdl:definitions> |
KCOM/Web References/kr.co.devdoftech.cloud/Reference.cs | ||
---|---|---|
23 | 23 |
|
24 | 24 |
|
25 | 25 |
/// <remarks/> |
26 |
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3752.0")]
|
|
26 |
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.9037.0")]
|
|
27 | 27 |
[System.Diagnostics.DebuggerStepThroughAttribute()] |
28 | 28 |
[System.ComponentModel.DesignerCategoryAttribute("code")] |
29 | 29 |
[System.Web.Services.WebServiceBindingAttribute(Name="FileUploadSoap", Namespace="http://tempuri.org/")] |
... | ... | |
31 | 31 |
|
32 | 32 |
private System.Threading.SendOrPostCallback RunOperationCompleted; |
33 | 33 |
|
34 |
private System.Threading.SendOrPostCallback RunSymbolOperationCompleted; |
|
35 |
|
|
36 |
private System.Threading.SendOrPostCallback ServerMapPathTestOperationCompleted; |
|
37 |
|
|
38 |
private System.Threading.SendOrPostCallback SymbolRegenOperationCompleted; |
|
39 |
|
|
34 | 40 |
private bool useDefaultCredentialsSetExplicitly; |
35 | 41 |
|
36 | 42 |
/// <remarks/> |
... | ... | |
73 | 79 |
public event RunCompletedEventHandler RunCompleted; |
74 | 80 |
|
75 | 81 |
/// <remarks/> |
82 |
public event RunSymbolCompletedEventHandler RunSymbolCompleted; |
|
83 |
|
|
84 |
/// <remarks/> |
|
85 |
public event ServerMapPathTestCompletedEventHandler ServerMapPathTestCompleted; |
|
86 |
|
|
87 |
/// <remarks/> |
|
88 |
public event SymbolRegenCompletedEventHandler SymbolRegenCompleted; |
|
89 |
|
|
90 |
/// <remarks/> |
|
76 | 91 |
[System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/Run", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] |
77 | 92 |
public string Run(string ProjectNo, string VPNo, string UserID, string FileName, [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary")] byte[] f) { |
78 | 93 |
object[] results = this.Invoke("Run", new object[] { |
... | ... | |
110 | 125 |
} |
111 | 126 |
|
112 | 127 |
/// <remarks/> |
128 |
[System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/RunSymbol", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] |
|
129 |
public string RunSymbol(string ProjectNo, string VPNo, string UserID, string FileName, [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary")] byte[] f) { |
|
130 |
object[] results = this.Invoke("RunSymbol", new object[] { |
|
131 |
ProjectNo, |
|
132 |
VPNo, |
|
133 |
UserID, |
|
134 |
FileName, |
|
135 |
f}); |
|
136 |
return ((string)(results[0])); |
|
137 |
} |
|
138 |
|
|
139 |
/// <remarks/> |
|
140 |
public void RunSymbolAsync(string ProjectNo, string VPNo, string UserID, string FileName, byte[] f) { |
|
141 |
this.RunSymbolAsync(ProjectNo, VPNo, UserID, FileName, f, null); |
|
142 |
} |
|
143 |
|
|
144 |
/// <remarks/> |
|
145 |
public void RunSymbolAsync(string ProjectNo, string VPNo, string UserID, string FileName, byte[] f, object userState) { |
|
146 |
if ((this.RunSymbolOperationCompleted == null)) { |
|
147 |
this.RunSymbolOperationCompleted = new System.Threading.SendOrPostCallback(this.OnRunSymbolOperationCompleted); |
|
148 |
} |
|
149 |
this.InvokeAsync("RunSymbol", new object[] { |
|
150 |
ProjectNo, |
|
151 |
VPNo, |
|
152 |
UserID, |
|
153 |
FileName, |
|
154 |
f}, this.RunSymbolOperationCompleted, userState); |
|
155 |
} |
|
156 |
|
|
157 |
private void OnRunSymbolOperationCompleted(object arg) { |
|
158 |
if ((this.RunSymbolCompleted != null)) { |
|
159 |
System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); |
|
160 |
this.RunSymbolCompleted(this, new RunSymbolCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); |
|
161 |
} |
|
162 |
} |
|
163 |
|
|
164 |
/// <remarks/> |
|
165 |
[System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/ServerMapPathTest", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] |
|
166 |
public string ServerMapPathTest(string uri) { |
|
167 |
object[] results = this.Invoke("ServerMapPathTest", new object[] { |
|
168 |
uri}); |
|
169 |
return ((string)(results[0])); |
|
170 |
} |
|
171 |
|
|
172 |
/// <remarks/> |
|
173 |
public void ServerMapPathTestAsync(string uri) { |
|
174 |
this.ServerMapPathTestAsync(uri, null); |
|
175 |
} |
|
176 |
|
|
177 |
/// <remarks/> |
|
178 |
public void ServerMapPathTestAsync(string uri, object userState) { |
|
179 |
if ((this.ServerMapPathTestOperationCompleted == null)) { |
|
180 |
this.ServerMapPathTestOperationCompleted = new System.Threading.SendOrPostCallback(this.OnServerMapPathTestOperationCompleted); |
|
181 |
} |
|
182 |
this.InvokeAsync("ServerMapPathTest", new object[] { |
|
183 |
uri}, this.ServerMapPathTestOperationCompleted, userState); |
|
184 |
} |
|
185 |
|
|
186 |
private void OnServerMapPathTestOperationCompleted(object arg) { |
|
187 |
if ((this.ServerMapPathTestCompleted != null)) { |
|
188 |
System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); |
|
189 |
this.ServerMapPathTestCompleted(this, new ServerMapPathTestCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); |
|
190 |
} |
|
191 |
} |
|
192 |
|
|
193 |
/// <remarks/> |
|
194 |
[System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/SymbolRegen", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] |
|
195 |
public string SymbolRegen() { |
|
196 |
object[] results = this.Invoke("SymbolRegen", new object[0]); |
|
197 |
return ((string)(results[0])); |
|
198 |
} |
|
199 |
|
|
200 |
/// <remarks/> |
|
201 |
public void SymbolRegenAsync() { |
|
202 |
this.SymbolRegenAsync(null); |
|
203 |
} |
|
204 |
|
|
205 |
/// <remarks/> |
|
206 |
public void SymbolRegenAsync(object userState) { |
|
207 |
if ((this.SymbolRegenOperationCompleted == null)) { |
|
208 |
this.SymbolRegenOperationCompleted = new System.Threading.SendOrPostCallback(this.OnSymbolRegenOperationCompleted); |
|
209 |
} |
|
210 |
this.InvokeAsync("SymbolRegen", new object[0], this.SymbolRegenOperationCompleted, userState); |
|
211 |
} |
|
212 |
|
|
213 |
private void OnSymbolRegenOperationCompleted(object arg) { |
|
214 |
if ((this.SymbolRegenCompleted != null)) { |
|
215 |
System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); |
|
216 |
this.SymbolRegenCompleted(this, new SymbolRegenCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); |
|
217 |
} |
|
218 |
} |
|
219 |
|
|
220 |
/// <remarks/> |
|
113 | 221 |
public new void CancelAsync(object userState) { |
114 | 222 |
base.CancelAsync(userState); |
115 | 223 |
} |
... | ... | |
129 | 237 |
} |
130 | 238 |
|
131 | 239 |
/// <remarks/> |
132 |
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3752.0")]
|
|
240 |
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.9037.0")]
|
|
133 | 241 |
public delegate void RunCompletedEventHandler(object sender, RunCompletedEventArgs e); |
134 | 242 |
|
135 | 243 |
/// <remarks/> |
136 |
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3752.0")]
|
|
244 |
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.9037.0")]
|
|
137 | 245 |
[System.Diagnostics.DebuggerStepThroughAttribute()] |
138 | 246 |
[System.ComponentModel.DesignerCategoryAttribute("code")] |
139 | 247 |
public partial class RunCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { |
... | ... | |
153 | 261 |
} |
154 | 262 |
} |
155 | 263 |
} |
264 |
|
|
265 |
/// <remarks/> |
|
266 |
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.9037.0")] |
|
267 |
public delegate void RunSymbolCompletedEventHandler(object sender, RunSymbolCompletedEventArgs e); |
|
268 |
|
|
269 |
/// <remarks/> |
|
270 |
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.9037.0")] |
|
271 |
[System.Diagnostics.DebuggerStepThroughAttribute()] |
|
272 |
[System.ComponentModel.DesignerCategoryAttribute("code")] |
|
273 |
public partial class RunSymbolCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { |
|
274 |
|
|
275 |
private object[] results; |
|
276 |
|
|
277 |
internal RunSymbolCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : |
|
278 |
base(exception, cancelled, userState) { |
|
279 |
this.results = results; |
|
280 |
} |
|
281 |
|
|
282 |
/// <remarks/> |
|
283 |
public string Result { |
|
284 |
get { |
|
285 |
this.RaiseExceptionIfNecessary(); |
|
286 |
return ((string)(this.results[0])); |
|
287 |
} |
|
288 |
} |
|
289 |
} |
|
290 |
|
|
291 |
/// <remarks/> |
|
292 |
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.9037.0")] |
|
293 |
public delegate void ServerMapPathTestCompletedEventHandler(object sender, ServerMapPathTestCompletedEventArgs e); |
|
294 |
|
|
295 |
/// <remarks/> |
|
296 |
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.9037.0")] |
|
297 |
[System.Diagnostics.DebuggerStepThroughAttribute()] |
|
298 |
[System.ComponentModel.DesignerCategoryAttribute("code")] |
|
299 |
public partial class ServerMapPathTestCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { |
|
300 |
|
|
301 |
private object[] results; |
|
302 |
|
|
303 |
internal ServerMapPathTestCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : |
|
304 |
base(exception, cancelled, userState) { |
|
305 |
this.results = results; |
|
306 |
} |
|
307 |
|
|
308 |
/// <remarks/> |
|
309 |
public string Result { |
|
310 |
get { |
|
311 |
this.RaiseExceptionIfNecessary(); |
|
312 |
return ((string)(this.results[0])); |
|
313 |
} |
|
314 |
} |
|
315 |
} |
|
316 |
|
|
317 |
/// <remarks/> |
|
318 |
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.9037.0")] |
|
319 |
public delegate void SymbolRegenCompletedEventHandler(object sender, SymbolRegenCompletedEventArgs e); |
|
320 |
|
|
321 |
/// <remarks/> |
|
322 |
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.9037.0")] |
|
323 |
[System.Diagnostics.DebuggerStepThroughAttribute()] |
|
324 |
[System.ComponentModel.DesignerCategoryAttribute("code")] |
|
325 |
public partial class SymbolRegenCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { |
|
326 |
|
|
327 |
private object[] results; |
|
328 |
|
|
329 |
internal SymbolRegenCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : |
|
330 |
base(exception, cancelled, userState) { |
|
331 |
this.results = results; |
|
332 |
} |
|
333 |
|
|
334 |
/// <remarks/> |
|
335 |
public string Result { |
|
336 |
get { |
|
337 |
this.RaiseExceptionIfNecessary(); |
|
338 |
return ((string)(this.results[0])); |
|
339 |
} |
|
340 |
} |
|
341 |
} |
|
156 | 342 |
} |
157 | 343 |
|
158 | 344 |
#pragma warning restore 1591 |
KCOM/Web References/kr.co.devdoftech.cloud/Reference.map | ||
---|---|---|
1 | 1 |
<?xml version="1.0" encoding="utf-8"?> |
2 | 2 |
<DiscoveryClientResultsFile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> |
3 | 3 |
<Results> |
4 |
<DiscoveryClientResult referenceType="System.Web.Services.Discovery.DiscoveryDocumentReference" url="https://localhost:44301/ImageUpload/FileUpload.asmx?disco" filename="FileUpload.disco" />
|
|
5 |
<DiscoveryClientResult referenceType="System.Web.Services.Discovery.ContractReference" url="https://localhost:44301/ImageUpload/FileUpload.asmx?wsdl" filename="FileUpload.wsdl" />
|
|
4 |
<DiscoveryClientResult referenceType="System.Web.Services.Discovery.ContractReference" url="http://localhost:44301/ImageUpload/FileUpload.asmx?wsdl" filename="FileUpload.wsdl" />
|
|
5 |
<DiscoveryClientResult referenceType="System.Web.Services.Discovery.DiscoveryDocumentReference" url="http://localhost:44301/ImageUpload/FileUpload.asmx?disco" filename="FileUpload.disco" />
|
|
6 | 6 |
</Results> |
7 | 7 |
</DiscoveryClientResultsFile> |
KCOM/app.config | ||
---|---|---|
123 | 123 |
<applicationSettings> |
124 | 124 |
<KCOM.Properties.Settings> |
125 | 125 |
<setting name="KCOM_kr_co_devdoftech_cloud_FileUpload" serializeAs="String"> |
126 |
<value>https://localhost:44301/ImageUpload/FileUpload.asmx</value>
|
|
126 |
<value>http://localhost:44301/ImageUpload/FileUpload.asmx</value> |
|
127 | 127 |
</setting> |
128 | 128 |
<setting name="KCOM_Get_FinalImage_Get_PdfImage" serializeAs="String"> |
129 | 129 |
<value>http://cloud.devdoftech.co.kr:5977/Get_FInalImage/Get_PdfImage.asmx</value> |
KCOM/packages.config | ||
---|---|---|
10 | 10 |
<package id="Newtonsoft.Json" version="12.0.3" targetFramework="net461" /> |
11 | 11 |
<package id="Obfuscar" version="2.2.29" targetFramework="net461" developmentDependency="true" /> |
12 | 12 |
<package id="Salaros.ConfigParser" version="0.3.4" targetFramework="net461" /> |
13 |
<package id="Svg2Xaml" version="0.3.0.5" targetFramework="net45" />
|
|
13 |
<package id="SharpVectors.Wpf" version="1.8.1" targetFramework="net461" />
|
|
14 | 14 |
<package id="System.Windows.Interactivity.WPF" version="2.0.20525" targetFramework="net40" /> |
15 | 15 |
<package id="ToggleSwitch" version="1.1.2" targetFramework="net40" /> |
16 | 16 |
<package id="WCFExtensions" version="1.0.0" targetFramework="net461" /> |
MarkupToPDF/Controls/Etc/ImgControl.cs | ||
---|---|---|
16 | 16 |
using MarkupToPDF.Serialize.Core; |
17 | 17 |
using MarkupToPDF.Serialize.S_Control; |
18 | 18 |
using System.Windows.Media.Imaging; |
19 |
using Svg2Xaml; |
|
20 | 19 |
|
21 | 20 |
namespace MarkupToPDF.Controls.Etc |
22 | 21 |
{ |
... | ... | |
474 | 473 |
Image img = new Image(); |
475 | 474 |
if (s.ImagePath.Contains(".svg")) |
476 | 475 |
{ |
477 |
byte[] imageData = null; |
|
478 |
DrawingImage image = null; |
|
479 |
using (System.Net.WebClient web = new System.Net.WebClient()) |
|
480 |
{ |
|
481 |
imageData = web.DownloadData(uri.Uri); |
|
482 |
System.IO.Stream stream = new System.IO.MemoryStream(imageData); |
|
483 |
image = SvgReader.Load(stream); |
|
484 |
} |
|
485 |
img.Source = image; |
|
476 |
SharpVectors.Converters.SvgImageExtension svgImage = new SharpVectors.Converters.SvgImageExtension(uri.ToString()); |
|
477 |
var svg = svgImage.ProvideValue(null); |
|
478 |
|
|
479 |
img.Source = (DrawingImage)svg; |
|
486 | 480 |
} |
487 | 481 |
else |
488 | 482 |
{ |
MarkupToPDF/Controls/Parsing/MarkupParse.cs | ||
---|---|---|
26 | 26 |
using System.Net.Cache; |
27 | 27 |
using System.Collections.ObjectModel; |
28 | 28 |
using MarkupToPDF.Common; |
29 |
using Svg2Xaml; |
|
30 | 29 |
using MarkupToPDF.Controls.Cad; |
31 | 30 |
using MarkupToPDF.Controls.Common; |
32 | 31 |
using System.Threading.Tasks; |
MarkupToPDF/MarkupToPDF.csproj | ||
---|---|---|
298 | 298 |
</Reference> |
299 | 299 |
<Reference Include="PresentationCore" /> |
300 | 300 |
<Reference Include="PresentationFramework" /> |
301 |
<Reference Include="Svg2Xaml, Version=0.3.0.5, Culture=neutral, processorArchitecture=MSIL"> |
|
302 |
<HintPath>..\packages\Svg2Xaml.0.3.0.5\lib\net40\Svg2Xaml.dll</HintPath> |
|
301 |
<Reference Include="SharpVectors.Converters.Wpf, Version=1.8.1.0, Culture=neutral, PublicKeyToken=b532964b8548be77, processorArchitecture=MSIL"> |
|
302 |
<HintPath>..\packages\SharpVectors.Wpf.1.8.1\lib\net46\SharpVectors.Converters.Wpf.dll</HintPath> |
|
303 |
</Reference> |
|
304 |
<Reference Include="SharpVectors.Core, Version=1.8.1.0, Culture=neutral, PublicKeyToken=7407205e337c98ef, processorArchitecture=MSIL"> |
|
305 |
<HintPath>..\packages\SharpVectors.Wpf.1.8.1\lib\net46\SharpVectors.Core.dll</HintPath> |
|
306 |
</Reference> |
|
307 |
<Reference Include="SharpVectors.Css, Version=1.8.1.0, Culture=neutral, PublicKeyToken=7a46e3f532fdb787, processorArchitecture=MSIL"> |
|
308 |
<HintPath>..\packages\SharpVectors.Wpf.1.8.1\lib\net46\SharpVectors.Css.dll</HintPath> |
|
309 |
</Reference> |
|
310 |
<Reference Include="SharpVectors.Dom, Version=1.8.1.0, Culture=neutral, PublicKeyToken=517340b6277b1a7a, processorArchitecture=MSIL"> |
|
311 |
<HintPath>..\packages\SharpVectors.Wpf.1.8.1\lib\net46\SharpVectors.Dom.dll</HintPath> |
|
312 |
</Reference> |
|
313 |
<Reference Include="SharpVectors.Model, Version=1.8.1.0, Culture=neutral, PublicKeyToken=2236cfc76b505845, processorArchitecture=MSIL"> |
|
314 |
<HintPath>..\packages\SharpVectors.Wpf.1.8.1\lib\net46\SharpVectors.Model.dll</HintPath> |
|
315 |
</Reference> |
|
316 |
<Reference Include="SharpVectors.Rendering.Wpf, Version=1.8.1.0, Culture=neutral, PublicKeyToken=d0902381100df30e, processorArchitecture=MSIL"> |
|
317 |
<HintPath>..\packages\SharpVectors.Wpf.1.8.1\lib\net46\SharpVectors.Rendering.Wpf.dll</HintPath> |
|
318 |
</Reference> |
|
319 |
<Reference Include="SharpVectors.Runtime.Wpf, Version=1.8.1.0, Culture=neutral, PublicKeyToken=d16e717f0a981fb9, processorArchitecture=MSIL"> |
|
320 |
<HintPath>..\packages\SharpVectors.Wpf.1.8.1\lib\net46\SharpVectors.Runtime.Wpf.dll</HintPath> |
|
303 | 321 |
</Reference> |
304 | 322 |
<Reference Include="System" /> |
305 | 323 |
<Reference Include="System.ComponentModel.DataAnnotations" /> |
MarkupToPDF/packages.config | ||
---|---|---|
4 | 4 |
<package id="EntityFramework.ko" version="5.0.0" targetFramework="net45" /> |
5 | 5 |
<package id="iTextSharp" version="5.5.12" targetFramework="net40" /> |
6 | 6 |
<package id="Newtonsoft.Json" version="12.0.3" targetFramework="net461" /> |
7 |
<package id="Svg2Xaml" version="0.3.0.5" targetFramework="net40" />
|
|
7 |
<package id="SharpVectors.Wpf" version="1.8.1" targetFramework="net461" />
|
|
8 | 8 |
</packages> |
내보내기 Unified diff