IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Autres EDI Discussion :

Aspose : des composants et contrôles pour manipuler les fichiers quel que soit le format


Sujet :

Autres EDI

  1. #1
    Rédacteur
    Avatar de Hinault Romaric
    Homme Profil pro
    Consultant
    Inscrit en
    Janvier 2007
    Messages
    4 570
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Consultant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2007
    Messages : 4 570
    Points : 252 372
    Points
    252 372
    Billets dans le blog
    121
    Par défaut Aspose : des composants et contrôles pour manipuler les fichiers quel que soit le format
    Aspose : des composants et contrôles pour manipuler les fichiers quel que soit le format
    dans les applications .NET, Java, Android et le Cloud

    Il est assez fréquent que les développeurs soient amenés à manipuler des fichiers dans leurs applications. Cependant, les langages de programmation ne fournissent pas des API spécifiques pour le traitement (création, lecture, écriture, etc.) des fichiers.

    Les développeurs sont assez souvent obligés de passer par des composants développés par des éditeurs tiers. C’est dans ce registre que figure Aspose, un fournisseur d’API pour la gestion des fichiers dans les programmes .NET, Java, Cloud, Android, SharePoint, ainsi que des extensions de rendu pour SSRS (SQL Server Reporting Services) et JasperReports.

    Aspose fournit des composants qui permettent de manipuler avec souplesse et simplicité des fichiers Microsoft Word, OpenDocument, PDF, des présentations PowerPoint et OpenDocument, des diagrammes Visio, des documents OneNote, la génération des codes barres, des images, etc.

    Dans le catalogue de produits de la firme, on retrouve :

    • Aspose.Cells : qui fournit des composants qui peuvent être utilisés dans les applications pour créer, modifier, convertir et imprimer des feuilles de calcul Excel, sans avoir besoin qu’Excel soit installé sur le système de l’utilisateur. Aspose.Cells prend en charge tous les formats Microsoft Excel et d’autres formats de fichiers, dont XLS, XLSX, XLSM, XLTX/XLTM, HTML, CSV, ODS, etc.
    • Aspose.Words : la bibliothèque met à la disposition des développeurs les outils nécessaires pour effectuer directement dans les applications une multitude de taches de traitement des documents. Les composants qu’elle propose permettent de générer, modifier, convertir et imprimer des documents sans avoir besoin de Microsoft Word. Elle support les formats DOC, OOXML, RTF, HTML, OpenDocument, PDF, XPS, EPUB et bien plus.
    • Aspose.Pdf : il s’agit d’un composant qui permet la manipulation des documents PDF (génération, lecture, écriture, etc.) dans des applications, sans avoir besoin d’Adobe Acrobat.
    • Aspose.Slides : il fournit des composants de gestion PowerPoint, permettant d’intégrer dans les applications des fonctionnalités pour générer, modifier, convertir et imprimer des documents PowerPoint sans l’aide de Microsoft PowerPoint. Il prend en charge les formats PPT, PPS, POT, PresentationML (OOXML, PPTX) et présentation Open Document (ODP).
    • Aspose.BarCode : l’outil propose un composant de gestion de codes barres. Il permet aux développeurs d’intégrer rapidement à leurs applications des fonctionnalités de génération et de reconnaissance des codes barres.
    • Aspose.Tasks : ce composant est dédié à la gestion des projets. Il permet d’intégrer dans les applications des fonctionnalités pour lire les fichiers Microsoft Project aux formats XML et MPP, et des fonctions d’écriture pour le format XML.
    • Aspose.Email : il est dédié à la gestion des courriers électroniques. Grâce à cette API, les développeurs peuvent facilement implémenter des fonctionnalités pour lire et mettre à jour des fichiers aux formats MSG , EML , EMLX , OFT, ainsi qu’ajouter ou supprimer des pièces jointes.
    • Aspose.Imaging : ce composant fournit une bibliothèque d’imagerie qui permet aux développeurs de créer, modifier ou convertir des images dans leurs applications. Plusieurs formats sont pris en charge, dont PSD, TIFF, GIF, BMP, JPEG et PNG.





    Les développeurs peuvent acquérir chaque outils indépendamment en fonction de la plateforme cible (Java, .NET, Android, SharePoint, etc.), ou un pack contenant l’ensemble des outils pour un langage précis, ou encore un « Family Packs », qui permet de disposer de l’ensemble des produits, ou un produit spécifique dans toutes ses déclinaisons (.NET, Java, Android, SharePoint, etc.).

    Par ailleurs la firme met à disposition des API Rest (Aspose for Cloud) qui permettent aux développeurs Web et mobiles d’intégrer à leurs applications des fonctionnalités de manipulation de fichiers, à partir de n’importe quelle plateforme (.NET, Java, Ruby, Python, Salesforce, Amazon, etc.).

    Vous pouvez télécharger une version d’évaluation gratuite sur le site du projet. Des exemples sont disponibles sur l’utilisation de chaque composant.

    En savoir plus sur les composants et contrôles Aspose et télécharger une version d'évaluation

  2. #2
    Membre averti
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2009
    Messages
    98
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2009
    Messages : 98
    Points : 311
    Points
    311
    Par défaut
    Ouais.

    Pour 2500$ et plus, je vais garder mes nombreux outils tiers... Ça pourrait valoir la peine pour une business cependant...

  3. #3
    Membre éclairé Avatar de alves1993
    Homme Profil pro
    Développeur Java/Dart/Javascript/Android (FullStack)
    Inscrit en
    Décembre 2012
    Messages
    222
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur Java/Dart/Javascript/Android (FullStack)
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2012
    Messages : 222
    Points : 659
    Points
    659
    Par défaut
    Ça coute vraiment trop chère surtout pour un dev indépendant.

  4. #4
    Membre expert Avatar de jopopmk
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2011
    Messages
    1 856
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2011
    Messages : 1 856
    Points : 3 570
    Points
    3 570
    Par défaut
    Salut,

    par pure curiosité : cette "couche" Aspose comprend-elle un OCR pour les PDF de type image, ou même simplement les images ?

  5. #5
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 753
    Points
    39 753
    Par défaut
    C'est vraiment hors de prix... ça a intérêt à être sacrément bien pour justifier un tel tarif.

    Et si on en croit la vidéo, ils utilisent encore Windows XP et 98, et ils stockent leurs fichiers sur disquettes

    Citation Envoyé par jopopmk Voir le message
    par pure curiosité : cette "couche" Aspose comprend-elle un OCR pour les PDF de type image, ou même simplement les images ?
    Oui : http://www.aspose.com/.net/ocr-component.aspx

  6. #6
    Rédacteur

    Avatar de autran
    Homme Profil pro
    Développeur Java
    Inscrit en
    Février 2015
    Messages
    1 241
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2015
    Messages : 1 241
    Points : 7 653
    Points
    7 653
    Billets dans le blog
    55
    Par défaut
    Bonjour,

    Ce qui serait intéressant :
    • Connaitre le couts des développements pour réaliser ce produit.
    • Et savoir combien ils en attendent en retour.


    J'ai l'impression que ca va leur rapporter pas mal.
    Si j'étais patron d'une SSII avec un carnet de commandes bien rempli avec un portefeuille de projets multi-langages, je me laisserais probablement tenter par ces composants magiques.

  7. #7
    Expert confirmé
    Avatar de Kropernic
    Homme Profil pro
    Analyste / Programmeur / DBA
    Inscrit en
    Juillet 2006
    Messages
    3 932
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Analyste / Programmeur / DBA
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2006
    Messages : 3 932
    Points : 4 242
    Points
    4 242
    Par défaut
    A ceux qui disent que c'est trop cher, vous avez des exemples de bons (cad faciles d'utilisations et bugs-free) outils pour ces choses-là ?

    C'est une vraie question. Je suis tombé sur la pub hier et sans trop regarder (juste vu les différents modules), j'ai pensé que ça pourra me faciliter la vie de ne plus avoir à me faire chier sur la version d'excel à choisir ou autre.

    Mais si vous en connaissez d'autres qui sont bons et moins chers, ça m'intéresse :-) (reste à voir si ça intéressera mon boss^^)

  8. #8
    Membre du Club
    Développeur Back-End
    Inscrit en
    Mars 2005
    Messages
    31
    Détails du profil
    Informations professionnelles :
    Activité : Développeur Back-End

    Informations forums :
    Inscription : Mars 2005
    Messages : 31
    Points : 46
    Points
    46
    Par défaut
    Si j'étais patron d'une SSII avec un carnet de commandes bien rempli avec un portefeuille de projets multi-langages, je me laisserais probablement tenter par ces composants magiques.
    Un patron de SSII réagira plutôt par : "ça coûte plus cher qu'un stagiaire pendant trois mois ? bha non alors"

  9. #9
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 753
    Points
    39 753
    Par défaut
    Citation Envoyé par Kropernic Voir le message
    A ceux qui disent que c'est trop cher, vous avez des exemples de bons (cad faciles d'utilisations et bugs-free) outils pour ces choses-là ?

    C'est une vraie question. Je suis tombé sur la pub hier et sans trop regarder (juste vu les différents modules), j'ai pensé que ça pourra me faciliter la vie de ne plus avoir à me faire chier sur la version d'excel à choisir ou autre.

    Mais si vous en connaissez d'autres qui sont bons et moins chers, ça m'intéresse :-) (reste à voir si ça intéressera mon boss^^)
    Pour Excel il y a EPPlus: http://epplus.codeplex.com/
    Pour le PDF il y a iTextSharp: http://sourceforge.net/projects/itextsharp/
    Pour les images et l'OCR il y en a plein
    Pour le reste je sais pas

  10. #10
    Expert confirmé
    Avatar de Kropernic
    Homme Profil pro
    Analyste / Programmeur / DBA
    Inscrit en
    Juillet 2006
    Messages
    3 932
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Analyste / Programmeur / DBA
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2006
    Messages : 3 932
    Points : 4 242
    Points
    4 242
    Par défaut
    Citation Envoyé par tomlev Voir le message
    Pour Excel il y a EPPlus: http://epplus.codeplex.com/
    Pour le PDF il y a iTextSharp: http://sourceforge.net/projects/itextsharp/
    Pour les images et l'OCR il y en a plein
    Pour le reste je sais pas
    EPPlus, je ne connaissais pas et je vais y jeter un oeil.

    iTextSharp par contre, à moins que cela ait évolué en bien ces derniers temps (dernières années en fait), j'en garde un très mauvais souvenir.

    Le traitement d'images et autre, je n'ai à priori pas l'utilité personnellement.

  11. #11
    Rédacteur

    Avatar de autran
    Homme Profil pro
    Développeur Java
    Inscrit en
    Février 2015
    Messages
    1 241
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2015
    Messages : 1 241
    Points : 7 653
    Points
    7 653
    Billets dans le blog
    55
    Par défaut
    Citation Envoyé par sachem Voir le message
    Un patron de SSII réagira plutôt par : "ça coûte plus cher qu'un stagiaire pendant trois mois ? bha non alors"
    Je doute fort qu'un stagiaire pendant 3 mois puisse te développer un composant multilangages. Il te le fera en Java ou en C# ou en PHP ou en ruby ou .....
    Donc compte plutôt un stagiaire pendant 2 ans et pendant ce temps tu perds en productivité sur tes projets.

  12. #12
    Expert confirmé

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2010
    Messages
    2 066
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Novembre 2010
    Messages : 2 066
    Points : 4 233
    Points
    4 233
    Par défaut
    Justement dernièrement j'avais besoin d'une bibliothèque capable de convertir un pdf en image je me suis finalement tourné vers docotic, je me serais peut être tourné vers aspose si j'avais eu connaissance de celui-ci.

  13. #13
    Membre chevronné Avatar de dfiad77pro
    Homme Profil pro
    Responsable Architecture logicielle
    Inscrit en
    Décembre 2008
    Messages
    544
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Responsable Architecture logicielle
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2008
    Messages : 544
    Points : 1 750
    Points
    1 750
    Par défaut
    Ce message concerne le coté .NET :

    Licence à 2500$ pour 1 développeur et 1 site de déploiement des produits dérivés ( sinon à plus de 7000$ )


    Infragistics semble valoir nettement plus le coût, même si il y a moins de format (Infragistics reste un framework costaux dans le domaine des composants graphique) !

    Quand on voit que leurs exemples sont proposés au max au format de VS2010 ça donne déjà une mauvaise impression sur le suivi.
    Je vais tester quand même pour voir l'intégration avec VS, mais ça me semble vraiment trop cher par rapport à la concurrence sur les composants payants.

    En contre-argument , vous pourrez me dire oui, mais c'est supporté par Mono.
    Oui et encore heureux, vu le prix et le fait qu'il ne semble pas y avoir de composants graphiques WPF ( Il est donc assez facile de faire du multi-plateforme dans ce cas).

    Déjà , il faut aimer Winforms et moche en plus :
    http://www.aspose.com/docs/display/c...a+Windows+Form


    coté code des exemples c'est pas top ( et j'ai pas voulut être méchant) :
    Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    //Exporting the contents of 7 rows and 2 columns starting from 1st cell to DataTable
    DataTable dataTable = worksheet.Cells.ExportDataTable(0, 0, 7, 2, true);
     
    //Binding the DataTable with DataGrid
    dataGrid1.DataSource = dataTable;

    Bref les exemples avec les vielles DataTables , je n'aime pas trop.
    Ca me rapelle les applications de maintenance...
    Autant typer correctement la DataSource, si c'est pour l'afficher, autant le faire dans un modèle objet cohérent...


    De plus, sur le site et l'API référence n'est pas versionnée et à jour donc difficile de savoir à quoi on à affaire sans l'essayer...

  14. #14
    Expert confirmé

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2010
    Messages
    2 066
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Novembre 2010
    Messages : 2 066
    Points : 4 233
    Points
    4 233
    Par défaut
    Oui mais j'ai l'impression qu'Infragistic propose moins de chose qu'Aspose sur certaine api comme pour le PDF impossible de créer un PDF depuis de l'HTML.

  15. #15
    Membre chevronné Avatar de dfiad77pro
    Homme Profil pro
    Responsable Architecture logicielle
    Inscrit en
    Décembre 2008
    Messages
    544
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Responsable Architecture logicielle
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2008
    Messages : 544
    Points : 1 750
    Points
    1 750
    Par défaut
    Citation Envoyé par youtpout978 Voir le message
    Oui mais j'ai l'impression qu'Infragistic propose moins de chose qu'Aspose sur certaine api comme pour le PDF impossible de créer un PDF depuis de l'HTML.

    Oui, c'est vrai (niveau transformation de fichier), après l'html vers PDF, j'ai jamais croisé une lib marchant correctement sur les pages complexes.

    Bon en plus y'a l'import d'office Project et quelques autre trucs. Mais ça vaut pas 6 fois le prix d'infragistics (au même conditions de licence) .

  16. #16
    Nouveau Candidat au Club
    Inscrit en
    Avril 2003
    Messages
    1
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Petite expérience
    Mon petit retour d'expérience :
    Pour Excel : EPPLUS mais ne gère que le format Xlsx (pas Xls)
    Pour Word : DocX (Codeplex) mais ne gère que le format Docx
    Pour PDF et Barcode (light): iTextSharp
    Ces librairies sont en .Net.

    Pour mon besoin pouvoir convertir de l'excel ou du word en pdf, sans avoir du word ou open office installé sur le poste je n'ai pas trouvé. Enfin si, j'ai trouvé des bouts de codes mais trop complexe à mettre en œuvre et le rendu n'était pas correct.

    Pour le prix, si il fallait développer tous les éléments dans les différents langages vu le cout d'un salarié pour l'employeur cela n'est absolument pas rentable. Il vaut mieux acheter le pack complet.
    Rien qu'en comptant le dev, plus les tests le budget pour la société explose.

  17. #17
    Expert confirmé

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2010
    Messages
    2 066
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Novembre 2010
    Messages : 2 066
    Points : 4 233
    Points
    4 233
    Par défaut
    Citation Envoyé par dfiad77pro Voir le message
    Oui, c'est vrai (niveau transformation de fichier), après l'html vers PDF, j'ai jamais croisé une lib marchant correctement sur les pages complexes.

    Bon en plus y'a l'import d'office Project et quelques autre trucs. Mais ça vaut pas 6 fois le prix d'infragistics (au même conditions de licence) .
    On utilise ITextSharp actuellement, ce qui nous oblige d'avoir un fichier css pour le site et un autre pour la transformation PDF vu l'interprétation plutôt exotique de certaine balise pourtant très classique, Aspose lui semble interpréter le css3.

  18. #18
    Rédacteur
    Avatar de lutecefalco
    Profil pro
    zadzdzddzdzd
    Inscrit en
    Juillet 2005
    Messages
    5 052
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : zadzdzddzdzd

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 052
    Points : 8 734
    Points
    8 734
    Par défaut
    2500€, c'est le prix d'un consultant sur une semaine.
    Le choix est vite fait pour ceux (les grosses boites) qui ont besoin de ce genre d'outils

  19. #19
    Membre chevronné Avatar de dfiad77pro
    Homme Profil pro
    Responsable Architecture logicielle
    Inscrit en
    Décembre 2008
    Messages
    544
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Responsable Architecture logicielle
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2008
    Messages : 544
    Points : 1 750
    Points
    1 750
    Par défaut
    Citation Envoyé par lutecefalco Voir le message
    2500€, c'est le prix d'un consultant sur une semaine.
    Le choix est vite fait pour ceux (les grosses boites) qui ont besoin de ce genre d'outils
    oui mais 2500€ est la licence pour 1 seul développeur avec déploiement sur 1 seul site, après ça passe à 7500 € !

  20. #20
    Rédacteur
    Avatar de lutecefalco
    Profil pro
    zadzdzddzdzd
    Inscrit en
    Juillet 2005
    Messages
    5 052
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : zadzdzddzdzd

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 052
    Points : 8 734
    Points
    8 734
    Par défaut
    Bah si t'as pas de thune, tu mets ça sur une VM. Les dévs qui ont en besoin se connectent dessus à tour de rôle.
    Et tu déploies ça sur un serveur qui expose un service exploitant Aspose.

    Sinon tu lâches 7 500€, c'est pas gd chose au final pour les sociétés d'une certaine taille.

Discussions similaires

  1. Je cherche des idées de farce pour piéger les copains de mon groupe de formation
    Par chjpset dans le forum La taverne du Club : Humour et divers
    Réponses: 32
    Dernier message: 02/05/2019, 17h36
  2. Librairie pour manipuler les fichiers DBF
    Par rahmoucha dans le forum Général Java
    Réponses: 3
    Dernier message: 26/11/2010, 10h03
  3. Rediriger tout les fichiers quel que soit le sous-dossier
    Par DarkChamallo dans le forum Apache
    Réponses: 5
    Dernier message: 22/10/2010, 23h54
  4. Composant pour gérer les fichiers PDF
    Par BXDSPORT dans le forum Delphi
    Réponses: 4
    Dernier message: 27/05/2007, 09h53

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo