Silverlight Image Editor control [closed] - silverlight

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
Questions asking us to recommend or find a tool, library or favorite off-site resource are off-topic for Stack Overflow as they tend to attract opinionated answers and spam. Instead, describe the problem and what has been done so far to solve it.
Closed 9 years ago.
Improve this question
Do you know of any Silverlight "Image Editor" controls, commercial or open source?
Primary feature requirements:
Crop/resize/rotate image
Set background color
Insert text
Insert multiple images
I'm aware of this similar question (November '08), but the Atalasoft offerings (currently the only answer) doesn't seem to include a Silverlight version.

Given the fact that the first hit Google returns for "Silverlight Image Editor" is a November 2008 forum post asking for one, I'd say this animal hasn't yet been created.

I'm not sure there is such a beast available in the open source world yet. If there was I'd have found it, as I had the same requirement. But, it's certainly possible to create one with Silverlight 3's capabilities, combined with a small dash of open source 3rd party libraries such as FJcore. I have done just that, as I wanted to be able to add a local image file, and upload an optimised version to remote database.
The uploader/editor I built does the following:
Select an image (JPG, GIF, PNG) from local file system
Extract EXIF data
Rotate the image
Crop image
Adjust brightness, contrast, saturation
Resize and upload an optimised JPEG via a webservice
Writablebitmap is the key to editing bitmaps. It's farly straightforward, and that what I use to render the image, crop the image and resize before sending. It's worth remembering that a bitmap is not a very effecient way to send the image, so I used FJCore to encode the the bitmap beforing sending. The other really useful thing that SL3 does is support pixel effects writen in HLSL. There are two built in ones, drop shadow and blur, and you can write your own. I adapted some HLSL code from the DirectX SDK to produce a custom effect that adjusts the contrast, brightness etc.
Oh. And one other gotcha. I'm not sure if it was a bug or my own lack of understanding, but I had some difficulty in rotating an image with the writablebitmap constructor, and ended up writing a simple array transform to rotate the writeable bitmap.
There's a demo showing all of the features (bar the upload) here:
http://www.sharemyroutes.com/demos/imageupload.aspx

http://nokola.com/easypainter
Still Beta but already has a lot of functionality.
Also partial sources for controls and effects are published on the blog

I just wanted to mention that with the upcoming Q2 2011 release Telerik will be offering an Image Editor specifically for Silverlight. This control allows you to use all of the known functionalities that come from an image editor, including cropping, resizing, rotating, as well as adjusting hue and saturation (just to mention a few). Right now the control is in beta, but the full release is right around the corner. For more information please refer to this blog post.

Related

fluid CSS framework [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
Questions asking us to recommend or find a book, tool, software library, tutorial or other off-site resource are off-topic for Stack Overflow as they tend to attract opinionated answers and spam. Instead, describe the problem and what has been done so far to solve it.
Closed 8 years ago.
Improve this question
I've googled all day looking for a light weight grid framework, but expecting something fluid and responsive -- perhaps my requirements are in conflict with each other.
I have looked at inuit.css and bootstrap and everything in between.
Ideally I find something low-level like reset.css and a simple grid system and just build from there.
This is for the admin panel of a backend of a web site so the 960 grid is not really what I want. Ideally the app should consume all the available space with media queries hiding portions which are less relevant when screen real estate is at a premium.
Is there such a thing? Seems every framework I looked at centered everything and when I maximized my window content just centered.
My framework, Jeet 3, will do that with ease.
header
background blue
.left_sidebar
col(1/4)
.main
col(3/4)
..would create a header at the top with a blue bg, a 1/4 left sidebar that was flush against the left side, and a main container next to that sidebar (separated by a fluid gutter) that took up 3/4 (the rest).
If you wanted to add a logo that matched up with the width of your sidebar, and some nav that was 1/4 away from your logo, then...
header
background blue
.logo
col(1/4)
nav
col(2/4, offset: -1/4)
a
col(1/4)
.left_sidebar
col(1/4)
.main
col(3/4)
Don't want gutters? Use span() instead.
IE8+ with decent IE7 degradation
Accepts any fraction and/or decimal
Gutters are consistent as you nest so long as you pass parent ratio context (check the demo screencast)
Jeet is mostly a grid system, but tag teams with Axis CSS which is like a beautiful UI library
Built on Stylus which is easily the sexiest preprocessor. It's flexible so you can use a plethora of syntax and it will work.
https://github.com/CorySimmons/jeet/
Have you tried Foundation 4? You can customize the framework and only download the grid framework.
For the sake of shameless self-promotion I'll throw mine into the ring:
Loxley.
It's essentially a single CSS file containing a set of media queries and grid system.

RadControls or DevExpress or Infragistics with ITextSharp [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
Questions asking us to recommend or find a tool, library or favorite off-site resource are off-topic for Stack Overflow as they tend to attract opinionated answers and spam. Instead, describe the problem and what has been done so far to solve it.
Closed 8 years ago.
Improve this question
I'm looking for a rich text box for a winform application. C#, .net 4.0
I need support for Bold, Underline, bullets and numbering in the text box.
In the future, to add language support with spelling correction is a wish.
I need this to work with ITextSharp for report generation.
I'd appreciate input on which choise of controls that would best suit my needs.
I've previously used on various projects RadControls, Infragistics and iTextSharp but not DevExpress so I can't speak to DevExpress. That being said, for the kinds of rich text editing you are describing, I think you can safely go with any of the 3. If it were up to me, I would go with Infragistics though.
I guess it's a matter of personal preference in this case but I've always found Infragistics to be easier to use than RadControls. I've also found Infragistics' documentation to be better (from the standpoint of ease of locating what I was looking for) than that of RadControls. Both Infragistics and Telerik (RadControls) support teams/communities were very active and helpful whenever I needed help.
Like I said, I can't speak to DevExpress but I would imagine it'll be very comparable to the other two in this context. If you have any specific questions about Infragistics and RadTools, feel free to ask. I'd be happy to answer them.
From your question i was not able to deduce which form of Windows Application are you talking about. Because as you know we can develop windows based application on .NET using Windows Presentation Foundation or traditionally known WinForms development. I cant speak for others but certianly can point you to 2 flavours available from Telerik for Windows Application Development. They are:
RadControls for WinForms - RadRichTextBox:
Features:
Rich Text Formatting - Telerik RadRichTextBox control allows you to
edit text and apply rich formatting options, like:
Bold
Italic
Underline
Strike Through
Text color and background
Bullet and numbered lists
Paragraph alignment and indentation
Show/Hide formatting symbols
Clear Formatting
Superscript and Subscript
Inserting pictures/symbol
SpellChecker - extensible spell checking for different languages,
using built-in or custom dictionaries.
Multi-level Undo/Redo Support - Telerik RadRichTextBox provides
desktop-like usability and control thanks to its multilevel
Undo/Redo feature. It allows past actions to be reviewed and
reversed, just like in Microsoft Word.
Two types of layout – Paged and Flow (as text in an HTML page viewed
in a browser).
Multi-region selection - the built-in multi-region support enables
you to perform various operations for more than one selection
simultaneously.
Import/export - with Telerik RadRichTextBox control you can load
XAML, HTML, RTF, DocX (rich-text) or TXT (plain text) into the
control, you can format and edit it and then export it back to any
of the above formats or PDF.
More information on this can be found at: http://www.telerik.com/products/winforms.aspx
Documentation for RichTextBox for WinForms can be found at: http://www.telerik.com/help/winforms/richtextbox-overview.html
RadControls for WPF - RadRichTextBox:
Features:
Rich Text Formatting - Telerik RadRichTextBox control allows you to
edit text and apply rich formatting options, like:
Bold,
Italic
Underline,
Strike Through, Superscript and Subscript
Usage of all available system fonts
Text color and background
Bullet and numbered lists
Paragraph alignment and indentation
Show/Hide formatting symbols
Clear Formatting
Inserting pictures/symbols/hyperlinks/custom UI elements
Table support – including nested tables, merging cells, setting
different RowSpan and ColumnSpan, tables with auto width and more.
ContextMenu - a standard one is provided out of the box, but it can
be easily customized or substituted for a user-defined one.
SelectionMiniToolbar - very similar to the one in MS Word, but can
also be replaced with another.
SpellChecker - extensible spell checking for different languages,
using built-in or custom dictionaries.
Printing – Using the native printing implementation of WPF.
Multi-level Undo/Redo Support - Telerik RadRichTextBox provides
desktop-like usability and control thanks to its multilevel
Undo/Redo feature. It allows past actions to be reviewed and
reversed, just like in Microsoft Word.
Two types of layout – Paged and Flow (as text in an HTML page viewed
in a browser).
Multi-region selection - the built-in multi-region support enables
you to perform various operations for more than one selection
simultaneously.
Rich-text clipboard – allows rich text copy/paste from Word,
OpenOffice etc.; Import/export - with Telerik RadRichTextBox
control you can load XAML, HTML, RTF, DocX (rich-text) or TXT
(plain text) into the control, you can format and edit it and then
export it back to any of the above formats or PDF.
More information can be read at : http://www.telerik.com/products/wpf/overview.aspx
Here is the documentation of RichTextBox : http://www.telerik.com/help/wpf/radrichtextbox-overview.html
Hope with above information you are able to visualize the gamut of options our control provides.
Lohith (Tech Evangelist, Telerik India)

Giving a presenation about WPF [closed]

Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 11 years ago.
Improve this question
As the only developer in our organization who has used WPF for the last couple of years, I've been asked to give a talk about it to other developers. I was hoping people could suggest how much and what I should cover without making the other developers feel overloaded.
- The presentation is only for around 30 minutes
- The rest of the group are all Win Forms developers and some have experience working in Silverlight
Show them data binding. It is the one of the most important things to wrap your head around in WPF, and it's also one of the great advantages it has over WinForms.
I would start off by showing some visual examples of what can be achieved through WPF and then describe, using diagrams, how that was achieved.
One great example is the fact you can bind the UI directly to a model - whether this is simply a runtime data type, or something hooked into a back-end database. Just the fact that you don't have to write custom UI update code to re-populate UI elements (like in WinForms) every time the backing data has been updated; is something that sells it for me!
On top of that, you have the whole styling system. It is much easier to mould the appearance of the application to something that your company wants. And it looks much nicer. For example, with the composition rendering system, layers of controls can be transparent - allowing you to create circular buttons where the click area isn't actually a rectangle. Similarly, though perhaps not applicable to you, is the fact you can overlay WPF controls onto a D3DImage, which can be used to render 3D content to. So you can have an application built over the top of some 3D imagery.
I would suggest reading through some topics about WPF on MSDN. Refreshing yourself over some articles on there may help you identify some really cool aspects of it.

Is there a good iTunes coverflow-type control for WPF?

I am currently using Telerik's carousel control, but it is lacking many features and is buggy. Is there a good control out there that looks the the coverflow control in itunes?
WPF Cover Flow Tutorial
Source Code: Part 7, Download
Author's rebuttal to claim of memory leak (it doesn't): Part 8
In Action: Videos
Contains a detailed walkthrough for building a coverflow control, including features such as reflection. I compiled and tried it out and pointed it to a directory containing hundreds of smallish images (you'll need to edit TestWindow.xaml.cs to point to a directory containing jpg's) and I was impressed with the performance and smoothness of the animation.
I noticed that using very large images degrades the performance though, so I'd recommend using images that are just the size needed for display. For example, when pointed to my desktop background images directory, there was nearly a one-second delay after pressing the arrow key and the item going through the transition (although the animation itself was still fluid, it took a moment to begin).
This is the best one that I found, for what I was looking for - namely, non-commercial, reflections, and smooth animation. I did look at the other ones currently mentioned in the other answers though, here are some comments on them (in no particular order):
FluidKit's ElementFlow
Open source, I used the latest source code, but did not try out any patches
Animation was smooth
Transition didn't feel very refined, the pictures clip each other in an odd way
Didn't seem geared for showing a handful of element's on the screen at once, it tries to show everything, and from some of the discussion comments, apparently isn't virtualized
After adding some images to the demo through the provided button, a large portion of them couldn't seem to get selected
Doesn't have reflections
Mindscape CoverFlow
Commercial
Animation was smooth
Doesn't "popup" selected item, feels very 2D
Has reflections
DevExpress Carousel
Commercial
No online demo and I didn't try to obtain the trial, looks polished though
Telerik Carousel
Commercial
Animation was smooth
The transition wasn't as pleasing to me, the new picture passed through the old one
Doesn't have reflections
Xceed Cardflow 3D
Commercial (professional edition only)
Animation was smooth, if you went quickly it would show blank cards speeding by and then fade in the actual data on the cards when you slowed down
Supports flipping the selected item, like in iTunes
Has reflections
ElementFlow control is inside the codeplex project called FluidKit - can be downloaded from here
For more details about the control - ElementFlow control at Pavan's blog
Mindscape now provide a commercial WPF Coverflow control as part of their WPF Elements control pack that might be useful also.
http://www.telerik.com/products/wpf/carousel.aspx
http://www.devexpress.com/Products/NET/Controls/WPF/Carousel/dependency_properties.xml
Both of these are FAR more versatile than your average cover flow clone (though they can easily just do that too if you want). I'd recommend Telerik well above DevExpress as WPF is still a relatively immature technology and DevExpress are very poor at keeping up with the tech game (they only JUST released a VS2010-supporting version of their DXperience suite despite promising it "just around the corner" since the start of January, while Telerik, ComponentOne etc all keep up with current tech. Not good enough for enterprise).

What's the best approach to printing/reporting from WPF? [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 9 years ago.
I have an upcoming project which will have to be able to print simple reports from its data. It'll be WPF-based, and I'm wondering which way to go.
I know that WPF introduces its own printing technology (based on XPS) which looks quite easy to use. However, part of me wonders whether it would just be easier to use the ReportViewer control and embed it in a Windows Forms host control, since that will give users the ability to export to a variety of formats as well as print.
Has anyone had any experience with printing/reporting from WPF? Which direction would you recommend?
Limitations of RDL
I originally went with RDLC/ReportViewer for printing with WPF but found it very limiting. Some of the limitations I found were:
RDL could only create the most boring of reports
It was much more work to create a report using RDL than in straight WPF: The design tools are very primitive compared to Expression Blend and RDL deals only in tables
I didn't have the ability to use ControlTemplates, DataTemplates, Styles, etc
My report fields and columns could not effectively resize and rearrange based on data size
Graphics had to be imported as images - it could not be drawn or edited as vectors
Positioning of items required code-behind rather than data binding
Lack of transforms
Very primitive data binding
Printing directly from WPF is very easy
Because of these limitations I looked into creating reports using pure WPF and discovered it was really quite trivial. WPF allows you to implement your own DocumentPaginator subclass that can generate pages.
I developed a simple DocumentPaginator subclass that takes any Visual, analyzes the visual tree, and hides selected elements to create each page.
DocumentPaginator details
Here is what my DocumentPaginator subclass does during initialization (called when first PageCount is fetched, or during the first GetPage() call):
Scans the visual tree and makes a map of all scrolled panels inside ItemsControls
Starting with the outermost, makes items in the ItemsControls invisible last to first until the Visual fits on a single page without any need to scroll. If the outermost can't be reduced enough, reduces inner panels until it succeeds or has only one item at each level. Record the set of visible items as the first page.
Hide the lowest-level items that have already been shown on the first page, then make subsequent items visible until they no longer fit on the page. Record all but the last-added item as the second page.
Repeat the process for all pages, storing the results in a data structure.
My DocumentPaginator's GetPage method is as follows:
Look up the given page number in the data structure generated during initialization
Hide and show items in the visual tree as indicated in the data structure
Set PageNumber and NumberOfPages attached properties so report can display page numbering
Flush the Dispatcher (Dispatcher.BeginInvoke(DispatcherPriority.ApplicationIdle, new Action(() => {} ));) to get any background rendering tasks to complete
Create a Rectangle the size of the page whose VisualBrush is the visual being printed
Measure, Arrange, and UpdateLayout the rectangle, then return it
This turned out to be quite simple code, and allowed me to turn practically anything I could create with WPF into pages and print it.
Additional reporting support
Now that my paginator is working, I no longer have to worry very much about whether I am creating my WPF content for screen or paper. In fact, often UI that I build for data entry and editing also works very well for printing.
From there I added a simple toolbar and some code behind, resulting in a full-fledged reporting system built around WPF that was far more capable than RDL. My reporting code can export to files, print to the printer, cut/paste page images, and cut/paste data for Excel. I can also switch any of my UI to "print view" with a click of a checkbox to see what it will look like if printed. All this in just a few hundred lines of C# and XAML!
At this point I think the only feature RDL has that my reporting code doesn't have is the ability to generate a formatted Excel spreadsheet. I can see how this could be done but so far there has been no need - cutting and pasting the data alone has been enough.
From my experience my recommendation would be to write a paginator, then start using WPF itself to create your reports.
We had this same issue, and ended up using RDLC/ReportViewer for now. There's no native WPF reporting tool (that I know of) and RDLC is pretty simple to use, and is free. The runtime overhead for it is small (around 2Mb) but you must remember to distribute it as it isn't part of the .NET Framework.
Look at http://wpfreports.codeplex.com/
Take a look at PdfReports. It's a code first reporting engine, which is built on top of the iTextSharp and EPPlus libraries. It's compatible with both .NET 3.5+ Web and Windows applications.
How about Scryber? It allows PDF report templates to be defined using xml and bound to data within your application at run time. http://scryber.codeplex.com/
To elaborate on Ray Burns answer, if you are looking for an implementation example, see:
Custom Data Grid Document Paginator
Which is a great starting point.
I've reccently accomplished task of developing own reporting system, which basically consist on design enviroment and data Source manager. The first task was to develop WYSWIG-like design enviroment. I've done this using GDI+, without even bothering about printing, as it came out printing/generating print preview was easiest than i expected, In general it only takes to draw all things on screen to graphics object of printing event.
I think that in case of WPF it would be similar, so all you should worry about is to display you report on screen and printing would be only few lines of code.
Without getting into a whole political discussion about the future of WPF, the best option we found was to wrap the ReportViewer in a Windows Forms host control.
http://blog.pineywoodstech.com/index.php/2012/01/using-microsoft-reportviewer-with-wpf/

Resources