I'm doing a bit research on gathering possible technologies to program a Text editor/Word Processor. The language used will be C# with the possibility to interop to unmanaged code via Pinvoke or Com. So far the Ideas I have come up with are.
Using Xml- Total Control of the process with the ability to use Xlst to style the document.
The rich Text editor Control - has out of the box word editing capabilities.
Html using Html Control with Design mode On - available formating tags already available and a easily distributable format.
I'm curious if anyone is aware of any other technologies or frameworks to build a Text editor I may have missed. Thanks in advance.
It depends from your technology of choise and licensing - if it is Silverlight or WPF, it's worth researching some components of the shelf - for example Telerik offers RadRichTextBox, which looks like can cover your requirements. Live Silverlight demos of word processor here and of data binding to HTML content here - WPF variant is pretty much the same.
Related
Are there any good samples of using Microsoft Excel as a grid control in a typical winform C# application.
I have come across a lot of threads talking about excel 'like' control or grid controls with functionality similar to Excel etc.
Why not use excel as a GRID control , it has all the goodies in build ( formula engine , sorting, filtering etc )
You certainly can host Excel as a control within a WinForm application, so part of what you want is possible (with major caveats). However, to wire up the rest of the functionality seen in many of the 3rd party grid libraries takes a lot of work, and has many pitfalls.
The prime reason for this is that Excel is a native Windows application, and is not running under the .Net framework. Therefore, all of the manipulation has to be done at arms length - you have to instantiate the application, instantiate a sheet, try and subscribe to certain events (many of which may not be available as Excel was not designed for this purpose), and, of course, try and propertly manage all of the COM references to avoid memory leaks.
The grid controls you mention have all been built from the ground up as controls to be hosted within .Net applications, and therefore expose properties and events around the type of grid style interactions that people want - remember, Excel is more than a grid.
However, as if to acknowledge that Excel can be a powerful tool when leveraged programmatically, Microsoft provided VSTO - a runtime that allows you to develop Excel (and other office applications) using .Net
As far as I know, there are no .NET controls for embedding Office applications.
Earlier you could use the DSOFramer to achieve what you want but then it was discontinued. I believe it still works though (I am not sure). The Web Browser (COM) control is an alternative to DSOFramer, but has its own drawbacks. For example, you cannot use the inbuilt "Goodies".
The below is just my personal opinion
I doubt that MS will never support embedded Office applications and the reason is very simple. MS-Office Applications are "End-User-Targeted" products. You need separate licenses for it and from a business perspective they wouldn't want to loose on that :) Like I mentioned earlier these are just my personal thoughts and do not echo MS's views.
I have seen some applications having such a rich layout that a person starts hating desktop applications like traditional c#.I was wondering how to make applications having GUI like this is it possible to make it in c#?
According to the title, this uses WPF, which can be used with C# and/or XAML. It can actually be used with any .NET language.
The problem is not the programming language. What you need is:
a UI framework that allows rich layouts (in C#, you'd use WPF),
and, even more important, a designer. With "designer", I mean a human, not a tool. If you look at your screenshot, you will notice that the colors of the background image match those of the buttons, that the buttons match the content circle, that the header of the content circle ("Getting Started") matches the header of the window.
So, really, this is not a matter of programming language. What you need is a design. Implementing it is the easy part (at least with technologies such as WPF).
Look at the window title... "Xceed DataGrid for WPF Recource Center". I might be going out on a limb here, but I'm guessing that it was written using WPF and C#.
Only the developers know for sure! Okay, the window title gives it away
Quick guess, they're using Windows Presentation Foundation, which isn't a language, but part of the .NET Framework (starting with 3.0).
Adding some resources here . . .
You have to use WPF for that, and probably with some custom controls.
For WPF have a look here:
Wikipedia
MSDN
Expression Studio
For already made controls you can check:
Xceed
Infragistics
Devexpress
There are a lot more out there even a lot of free ones. All the above are commercial but i think they have a few free samples.
Much as the title says, I am wondering how to style a program like Photoshop CS4 or Autodesk Maya 2011. These programs are styled to where the UI looks completely custom. Right now I am using C# to program, but I can easily switch to C++ and WinAPI if it is easier. I have done multiple google searches for styling controls in C#, but there are seemingly no accurate results.
Much thanks for any help,
-Thomas
If you using C#, WPF is a way to go, to make some custom UI. WinForms are not so modifiable.
This is a no easy task. DevXpress offer a wide range of skins with their components, so does Telerik.
There is a free library (without source) at Skybound, however this one is pretty old and not being developed anymore.
How could I write a simple program using OpenType tables in order to dynamically render text?
please answer in :
assembly , C , C++ , C# , java or Python (and a little WPF:-)
or introduce libraries of them.
comments and answers about text rendering system of common Operating Systems, or designing text engines compatible with unicode 5.02 protocol are welcomed.
FreeType only offers basic rendering capabilities and does not support advanced OpenType features. Lots of years ago, FreeType 1.x contained a module that provided OpenType functionality, but this became its own project: HarfBuzz. If you need something that works everywhere (every OS/platform), it should be the best solution. The excellent pango library provides a high-level interface for HarfBuzz, among other things.
Windows provides an OpenType engine, called Uniscribe. The same goes for OS X, which has ATSUI.
That should get you started, I hope.
I don't know if this will satisfy your needs or not, but I've used the FreeType library in the past to render TrueType text. It is quite flexible and easily ported between various platforms (Linux, Windows, OSX, etc.). Also, the licensing (BSD-style) is such that using it in commercial applications is not a problem.
Pure C#, https://github.com/LayoutFarm/Typography
support .NET >=20
access general glyph data,
and access advanced typography data.
(such as GDEF,GSUB,GPOS) etc.
The below image shows some screen snapshot,
snap1 :
compare then lib's rendering glyph 'B'
(left) : glyph from the lib without Hinting
(middle) : Windows's GDI with clear type (from notepad)
(right): glyph from the lib with True Hinting
snap 2:
I'm developing auto-hint, and grid fitting.
test it out, and feel free to comment, fork, discuss.
snap 3: subpixel rendering
To start off with, a little context for the question...
I have a C# .NET 2.0 program that generates web pages... I am looking for a control that allows the user to pick web friendly fonts for use in generating the web page to run on as many computer as possible. I'm currently useing the MS font dialog, but I have not found a way to filter it's list of fonts available. Additionally, I wouldn't mind buying a control if it has a more attractive use interface...
So... What font selection/picking control do you feel is the best and what attributes stand out for your choice?
My favorite is available through DevExpress.com. Their ExtraEditors library has a FontEdit component. Also if you embrace their controls it will improve the overall appearance of you app.
http://www.devexpress.com/Products/NET/Controls/WinForms/Editors/