No, I haven't tried any platformers. For jumping I would use ApplyLinearImpulse with a vertical vector applied at the player's center. Then gravity should bring the player back down and the player's horizontal velocity will give the jump an arc if he's already moving. I'd also make the character's body fixed-rotation (some box2d setting). You kind of have to play around with the physics until you're happy with them.
For platformer scrolling you will likely need to load your entire box2d level at once (that is the bodies, shapes and fixtures that define it). These kind of settings are relatively small compared to graphics. Then you'd likely have a pool of sprites that encompasses all the visible elements in your game that can be attached to a b2Body.
With 1 dimension, you can only ever have 2 screens of images viewable at once (even though only half of each screen). With 2 it's 4 screens, so you'd base your Sprite pools on the maximum number of objects of that kind that can be visible at once.
Then you would need a SceneManager to decide when it's safe to re-assign sprites from the out-of-scene b2Bodies to the ones that are now visible. Otherwise you will have way too many sprites at once or you will have to be constantly hitting malloc for each new screen.
Parallax scrolling would be easy enough. Your background moves in the opposite direction to your character. Each of the layers would just have a fractional multiplier that sets its scrolling speed relative to the character's speed. You can probably use scaled up low res images for the far-most layer as it should not steal attention from the front layers.
Anyway, there's a deal of work in all that, but I'm sure you're up to it.